diff --git a/PlayFabSdk/package.json b/PlayFabSdk/package.json index 9d073791..b104c0fb 100644 --- a/PlayFabSdk/package.json +++ b/PlayFabSdk/package.json @@ -1,6 +1,6 @@ { "name": "playfab-web-sdk", - "version": "1.86.210511", + "version": "1.217.260605", "description": "Playfab SDK for JS client applications", "license": "Apache-2.0", "repository": { diff --git a/PlayFabSdk/src/PlayFab/PlayFabAddonApi.js b/PlayFabSdk/src/PlayFab/PlayFabAddonApi.js new file mode 100644 index 00000000..0680fa3e --- /dev/null +++ b/PlayFabSdk/src/PlayFab/PlayFabAddonApi.js @@ -0,0 +1,367 @@ +/// + +var PlayFab = typeof PlayFab != "undefined" ? PlayFab : {}; + +if(!PlayFab.settings) { + PlayFab.settings = { + titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) + developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) + GlobalHeaderInjection: null, + productionServerUrl: ".playfabapi.com" + } +} + +if(!PlayFab._internalSettings) { + PlayFab._internalSettings = { + entityToken: null, + sdkVersion: "1.217.260605", + requestGetParams: { + sdk: "JavaScriptSDK-1.217.260605" + }, + sessionTicket: null, + verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this + errorTitleId: "Must be have PlayFab.settings.titleId set to call this method", + errorLoggedIn: "Must be logged in to call this method", + errorEntityToken: "You must successfully call GetEntityToken before calling this", + errorSecretKey: "Must have PlayFab.settings.developerSecretKey set to call this method", + + GetServerUrl: function () { + if (!(PlayFab.settings.productionServerUrl.substring(0, 4) === "http")) { + if (PlayFab._internalSettings.verticalName) { + return "https://" + PlayFab._internalSettings.verticalName + PlayFab.settings.productionServerUrl; + } else { + return "https://" + PlayFab.settings.titleId + PlayFab.settings.productionServerUrl; + } + } else { + return PlayFab.settings.productionServerUrl; + } + }, + + InjectHeaders: function (xhr, headersObj) { + if (!headersObj) + return; + + for (var headerKey in headersObj) + { + try { + xhr.setRequestHeader(gHeaderKey, headersObj[headerKey]); + } catch (e) { + console.log("Failed to append header: " + headerKey + " = " + headersObj[headerKey] + "Error: " + e); + } + } + }, + + ExecuteRequest: function (url, request, authkey, authValue, callback, customData, extraHeaders) { + var resultPromise = new Promise(function (resolve, reject) { + if (callback != null && typeof (callback) !== "function") + throw "Callback must be null or a function"; + + if (request == null) + request = {}; + + var startTime = new Date(); + var requestBody = JSON.stringify(request); + + var urlArr = [url]; + var getParams = PlayFab._internalSettings.requestGetParams; + if (getParams != null) { + var firstParam = true; + for (var key in getParams) { + if (firstParam) { + urlArr.push("?"); + firstParam = false; + } else { + urlArr.push("&"); + } + urlArr.push(key); + urlArr.push("="); + urlArr.push(getParams[key]); + } + } + + var completeUrl = urlArr.join(""); + + var xhr = new XMLHttpRequest(); + // window.console.log("URL: " + completeUrl); + xhr.open("POST", completeUrl, true); + + xhr.setRequestHeader("Content-Type", "application/json"); + xhr.setRequestHeader("X-PlayFabSDK", "JavaScriptSDK-" + PlayFab._internalSettings.sdkVersion); + if (authkey != null) + xhr.setRequestHeader(authkey, authValue); + PlayFab._internalSettings.InjectHeaders(xhr, PlayFab.settings.GlobalHeaderInjection); + PlayFab._internalSettings.InjectHeaders(xhr, extraHeaders); + + xhr.onloadend = function () { + if (callback == null) + return; + + var result = PlayFab._internalSettings.GetPlayFabResponse(request, xhr, startTime, customData); + if (result.code === 200) { + callback(result, null); + } else { + callback(null, result); + } + } + + xhr.onerror = function () { + if (callback == null) + return; + + var result = PlayFab._internalSettings.GetPlayFabResponse(request, xhr, startTime, customData); + callback(null, result); + } + + xhr.send(requestBody); + xhr.onreadystatechange = function () { + if (this.readyState === 4) { + var xhrResult = PlayFab._internalSettings.GetPlayFabResponse(request, this, startTime, customData); + if (this.status === 200) { + resolve(xhrResult); + } else { + reject(xhrResult); + } + } + }; + }); + // Return a Promise so that calls to various API methods can be handled asynchronously + return resultPromise; + }, + + GetPlayFabResponse: function(request, xhr, startTime, customData) { + var result = null; + try { + // window.console.log("parsing json result: " + xhr.responseText); + result = JSON.parse(xhr.responseText); + } catch (e) { + result = { + code: 503, // Service Unavailable + status: "Service Unavailable", + error: "Connection error", + errorCode: 2, // PlayFabErrorCode.ConnectionError + errorMessage: xhr.responseText + }; + } + + result.CallBackTimeMS = new Date() - startTime; + result.Request = request; + result.CustomData = customData; + return result; + }, + + authenticationContext: { + PlayFabId: null, + EntityId: null, + EntityType: null, + SessionTicket: null, + EntityToken: null + }, + + UpdateAuthenticationContext: function (authenticationContext, result) { + var authenticationContextUpdates = {}; + if(result.data.PlayFabId !== null) { + PlayFab._internalSettings.authenticationContext.PlayFabId = result.data.PlayFabId; + authenticationContextUpdates.PlayFabId = result.data.PlayFabId; + } + if(result.data.SessionTicket !== null) { + PlayFab._internalSettings.authenticationContext.SessionTicket = result.data.SessionTicket; + authenticationContextUpdates.SessionTicket = result.data.SessionTicket; + } + if (result.data.EntityToken !== null) { + PlayFab._internalSettings.authenticationContext.EntityId = result.data.EntityToken.Entity.Id; + authenticationContextUpdates.EntityId = result.data.EntityToken.Entity.Id; + PlayFab._internalSettings.authenticationContext.EntityType = result.data.EntityToken.Entity.Type; + authenticationContextUpdates.EntityType = result.data.EntityToken.Entity.Type; + PlayFab._internalSettings.authenticationContext.EntityToken = result.data.EntityToken.EntityToken; + authenticationContextUpdates.EntityToken = result.data.EntityToken.EntityToken; + } + // Update the authenticationContext with values from the result + authenticationContext = Object.assign(authenticationContext, authenticationContextUpdates); + return authenticationContext; + }, + + AuthInfoMap: { + "X-EntityToken": { + authAttr: "entityToken", + authError: "errorEntityToken" + }, + "X-Authorization": { + authAttr: "sessionTicket", + authError: "errorLoggedIn" + }, + "X-SecretKey": { + authAttr: "developerSecretKey", + authError: "errorSecretKey" + } + }, + + GetAuthInfo: function (request, authKey) { + // Use the most-recently saved authKey, unless one was provided in the request via the AuthenticationContext + var authError = PlayFab._internalSettings.AuthInfoMap[authKey].authError; + var authAttr = PlayFab._internalSettings.AuthInfoMap[authKey].authAttr; + var defaultAuthValue = null; + if (authAttr === "entityToken") + defaultAuthValue = PlayFab._internalSettings.entityToken; + else if (authAttr === "sessionTicket") + defaultAuthValue = PlayFab._internalSettings.sessionTicket; + else if (authAttr === "developerSecretKey") + defaultAuthValue = PlayFab.settings.developerSecretKey; + var authValue = request.AuthenticationContext ? request.AuthenticationContext[authAttr] : defaultAuthValue; + return {"authKey": authKey, "authValue": authValue, "authError": authError}; + }, + + ExecuteRequestWrapper: function (apiURL, request, authKey, callback, customData, extraHeaders) { + var authValue = null; + if (authKey !== null){ + var authInfo = PlayFab._internalSettings.GetAuthInfo(request, authKey=authKey); + var authKey = authInfo.authKey, authValue = authInfo.authValue, authError = authInfo.authError; + + if (!authValue) throw authError; + } + return PlayFab._internalSettings.ExecuteRequest(PlayFab._internalSettings.GetServerUrl() + apiURL, request, authKey, authValue, callback, customData, extraHeaders); + } + } +} + +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; +PlayFab.GenerateErrorReport = function (error) { + if (error == null) + return ""; + var fullErrors = error.errorMessage; + for (var paramName in error.errorDetails) + for (var msgIdx in error.errorDetails[paramName]) + fullErrors += "\n" + paramName + ": " + error.errorDetails[paramName][msgIdx]; + return fullErrors; +}; + +PlayFab.AddonApi = { + ForgetAllCredentials: function () { + PlayFab._internalSettings.sessionTicket = null; + PlayFab._internalSettings.entityToken = null; + }, + + CreateOrUpdateApple: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateApple", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateFacebook: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateFacebook", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateFacebookInstantGames: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateFacebookInstantGames", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateGoogle: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateGoogle", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateKongregate: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateKongregate", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateNintendo: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateNintendo", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdatePSN: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdatePSN", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateSteam: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateSteam", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateToxMod: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateToxMod", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateTwitch: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateTwitch", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteApple: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteApple", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteFacebook: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteFacebook", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteFacebookInstantGames: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteFacebookInstantGames", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteGoogle: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteGoogle", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteKongregate: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteKongregate", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteNintendo: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteNintendo", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeletePSN: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeletePSN", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteSteam: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteSteam", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteToxMod: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteToxMod", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteTwitch: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteTwitch", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetApple: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetApple", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetFacebook: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetFacebook", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetFacebookInstantGames: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetFacebookInstantGames", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetGoogle: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetGoogle", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetKongregate: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetKongregate", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetNintendo: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetNintendo", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetPSN: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetPSN", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetSteam: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetSteam", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetToxMod: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetToxMod", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetTwitch: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetTwitch", request, "X-EntityToken", callback, customData, extraHeaders); + }, + +}; + +var PlayFabAddonSDK = PlayFab.AddonApi; + diff --git a/PlayFabSdk/src/PlayFab/PlayFabAdminApi.js b/PlayFabSdk/src/PlayFab/PlayFabAdminApi.js index b6a79f8e..5b4f9aef 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabAdminApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabAdminApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -265,10 +257,6 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/AddPlayerTag", request, "X-SecretKey", callback, customData, extraHeaders); }, - AddServerBuild: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/AddServerBuild", request, "X-SecretKey", callback, customData, extraHeaders); - }, - AddUserVirtualCurrency: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/AddUserVirtualCurrency", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -321,6 +309,14 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/DeleteMasterPlayerAccount", request, "X-SecretKey", callback, customData, extraHeaders); }, + DeleteMasterPlayerEventData: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/DeleteMasterPlayerEventData", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + DeleteMembershipSubscription: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/DeleteMembershipSubscription", request, "X-SecretKey", callback, customData, extraHeaders); + }, + DeleteOpenIdConnection: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/DeleteOpenIdConnection", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -329,6 +325,10 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/DeletePlayer", request, "X-SecretKey", callback, customData, extraHeaders); }, + DeletePlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/DeletePlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); + }, + DeletePlayerSharedSecret: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/DeletePlayerSharedSecret", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -357,6 +357,10 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ExportMasterPlayerData", request, "X-SecretKey", callback, customData, extraHeaders); }, + ExportPlayersInSegment: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ExportPlayersInSegment", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetActionsOnPlayersInSegmentTaskInstance: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetActionsOnPlayersInSegmentTaskInstance", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -393,18 +397,14 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetDataReport", request, "X-SecretKey", callback, customData, extraHeaders); }, - GetMatchmakerGameInfo: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetMatchmakerGameInfo", request, "X-SecretKey", callback, customData, extraHeaders); - }, - - GetMatchmakerGameModes: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetMatchmakerGameModes", request, "X-SecretKey", callback, customData, extraHeaders); - }, - GetPlayedTitleList: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetPlayedTitleList", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetPlayerCustomProperty: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetPlayerCustomProperty", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetPlayerIdFromAuthToken: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetPlayerIdFromAuthToken", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -421,10 +421,6 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetPlayerSharedSecrets", request, "X-SecretKey", callback, customData, extraHeaders); }, - GetPlayersInSegment: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetPlayersInSegment", request, "X-SecretKey", callback, customData, extraHeaders); - }, - GetPlayerStatisticDefinitions: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetPlayerStatisticDefinitions", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -449,16 +445,16 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetRandomResultTables", request, "X-SecretKey", callback, customData, extraHeaders); }, - GetSegments: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetSegments", request, "X-SecretKey", callback, customData, extraHeaders); + GetSegmentExport: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetSegmentExport", request, "X-SecretKey", callback, customData, extraHeaders); }, - GetServerBuildInfo: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetServerBuildInfo", request, "X-SecretKey", callback, customData, extraHeaders); + GetSegmentPlayerCount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetSegmentPlayerCount", request, "X-SecretKey", callback, customData, extraHeaders); }, - GetServerBuildUploadUrl: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetServerBuildUploadUrl", request, "X-SecretKey", callback, customData, extraHeaders); + GetSegments: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetSegments", request, "X-SecretKey", callback, customData, extraHeaders); }, GetStoreItems: function (request, callback, customData, extraHeaders) { @@ -533,22 +529,14 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListOpenIdConnection", request, "X-SecretKey", callback, customData, extraHeaders); }, - ListServerBuilds: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListServerBuilds", request, "X-SecretKey", callback, customData, extraHeaders); + ListPlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListPlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); }, ListVirtualCurrencyTypes: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListVirtualCurrencyTypes", request, "X-SecretKey", callback, customData, extraHeaders); }, - ModifyMatchmakerGameModes: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ModifyMatchmakerGameModes", request, "X-SecretKey", callback, customData, extraHeaders); - }, - - ModifyServerBuild: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ModifyServerBuild", request, "X-SecretKey", callback, customData, extraHeaders); - }, - RefundPurchase: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/RefundPurchase", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -557,10 +545,6 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/RemovePlayerTag", request, "X-SecretKey", callback, customData, extraHeaders); }, - RemoveServerBuild: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/RemoveServerBuild", request, "X-SecretKey", callback, customData, extraHeaders); - }, - RemoveVirtualCurrencyTypes: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/RemoveVirtualCurrencyTypes", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -609,6 +593,10 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/SetCatalogItems", request, "X-SecretKey", callback, customData, extraHeaders); }, + SetMembershipOverride: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/SetMembershipOverride", request, "X-SecretKey", callback, customData, extraHeaders); + }, + SetPlayerSecret: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/SetPlayerSecret", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -661,6 +649,10 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/UpdateOpenIdConnection", request, "X-SecretKey", callback, customData, extraHeaders); }, + UpdatePlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/UpdatePlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); + }, + UpdatePlayerSharedSecret: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/UpdatePlayerSharedSecret", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -716,6 +708,11 @@ PlayFab.AdminApi = { UpdateUserTitleDisplayName: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/UpdateUserTitleDisplayName", request, "X-SecretKey", callback, customData, extraHeaders); }, + + ValidateApiPolicy: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ValidateApiPolicy", request, "X-SecretKey", callback, customData, extraHeaders); + }, + }; var PlayFabAdminSDK = PlayFab.AdminApi; diff --git a/PlayFabSdk/src/PlayFab/PlayFabAuthenticationApi.js b/PlayFabSdk/src/PlayFab/PlayFabAuthenticationApi.js index c6efc814..9ec5b672 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabAuthenticationApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabAuthenticationApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -249,6 +241,20 @@ PlayFab.AuthenticationApi = { PlayFab._internalSettings.entityToken = null; }, + AuthenticateGameServerWithCustomId: function (request, callback, customData, extraHeaders) { + var overloadCallback = function (result, error) { + if (result != null && result.data.EntityToken != null && result.data.EntityToken.EntityToken != null) + PlayFab._internalSettings.entityToken = result.data.EntityToken.EntityToken; + if (callback != null && typeof (callback) === "function") + callback(result, error); + }; + return PlayFab._internalSettings.ExecuteRequestWrapper("/GameServerIdentity/AuthenticateGameServerWithCustomId", request, "X-EntityToken", overloadCallback, customData, extraHeaders); + }, + + Delete: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/GameServerIdentity/Delete", request, "X-EntityToken", callback, customData, extraHeaders); + }, + GetEntityToken: function (request, callback, customData, extraHeaders) { var authKey = null; var authValue = null; if (!authKey && PlayFab._internalSettings.sessionTicket) { var authInfo = PlayFab._internalSettings.GetAuthInfo(request, authKey="X-Authorization"); authKey = authInfo.authKey, authValue = authInfo.authValue; } @@ -265,6 +271,7 @@ PlayFab.AuthenticationApi = { ValidateEntityToken: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Authentication/ValidateEntityToken", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabAuthenticationSDK = PlayFab.AuthenticationApi; diff --git a/PlayFabSdk/src/PlayFab/PlayFabClientApi.js b/PlayFabSdk/src/PlayFab/PlayFabClientApi.js index 3e4bfa7d..d079ce97 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabClientApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabClientApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -286,14 +278,7 @@ PlayFab.ClientApi = { }, AttributeInstall: function (request, callback, customData, extraHeaders) { - var overloadCallback = function (result, error) { - // Modify advertisingIdType: Prevents us from sending the id multiple times, and allows automated tests to determine id was sent successfully - PlayFab.settings.advertisingIdType += "_Successful"; - - if (callback != null && typeof (callback) === "function") - callback(result, error); - }; - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/AttributeInstall", request, "X-Authorization", overloadCallback, customData, extraHeaders); + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/AttributeInstall", request, "X-Authorization", callback, customData, extraHeaders); }, CancelTrade: function (request, callback, customData, extraHeaders) { @@ -328,6 +313,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/CreateSharedGroup", request, "X-Authorization", callback, customData, extraHeaders); }, + DeletePlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/DeletePlayerCustomProperties", request, "X-Authorization", callback, customData, extraHeaders); + }, + ExecuteCloudScript: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/ExecuteCloudScript", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -372,10 +361,6 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetContentDownloadUrl", request, "X-Authorization", callback, customData, extraHeaders); }, - GetCurrentGames: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetCurrentGames", request, "X-Authorization", callback, customData, extraHeaders); - }, - GetFriendLeaderboard: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetFriendLeaderboard", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -388,10 +373,6 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetFriendsList", request, "X-Authorization", callback, customData, extraHeaders); }, - GetGameServerRegions: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetGameServerRegions", request, "X-Authorization", callback, customData, extraHeaders); - }, - GetLeaderboard: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetLeaderboard", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -420,6 +401,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayerCombinedInfo", request, "X-Authorization", callback, customData, extraHeaders); }, + GetPlayerCustomProperty: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayerCustomProperty", request, "X-Authorization", callback, customData, extraHeaders); + }, + GetPlayerProfile: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayerProfile", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -444,6 +429,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayerTrades", request, "X-Authorization", callback, customData, extraHeaders); }, + GetPlayFabIDsFromBattleNetAccountIds: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromBattleNetAccountIds", request, "X-Authorization", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromFacebookIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromFacebookIDs", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -464,22 +453,42 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromGoogleIDs", request, "X-Authorization", callback, customData, extraHeaders); }, + GetPlayFabIDsFromGooglePlayGamesPlayerIDs: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromGooglePlayGamesPlayerIDs", request, "X-Authorization", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromKongregateIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromKongregateIDs", request, "X-Authorization", callback, customData, extraHeaders); }, + GetPlayFabIDsFromNintendoServiceAccountIds: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromNintendoServiceAccountIds", request, "X-Authorization", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromNintendoSwitchDeviceIds: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromNintendoSwitchDeviceIds", request, "X-Authorization", callback, customData, extraHeaders); }, + GetPlayFabIDsFromOpenIdSubjectIdentifiers: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromOpenIdSubjectIdentifiers", request, "X-Authorization", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromPSNAccountIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromPSNAccountIDs", request, "X-Authorization", callback, customData, extraHeaders); }, + GetPlayFabIDsFromPSNOnlineIDs: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromPSNOnlineIDs", request, "X-Authorization", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromSteamIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromSteamIDs", request, "X-Authorization", callback, customData, extraHeaders); }, + GetPlayFabIDsFromSteamNames: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromSteamNames", request, "X-Authorization", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromTwitchIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromTwitchIDs", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -544,13 +553,6 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetUserReadOnlyData", request, "X-Authorization", callback, customData, extraHeaders); }, - /** - * @deprecated Do not use - */ - GetWindowsHelloChallenge: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetWindowsHelloChallenge", request, null, callback, customData, extraHeaders); - }, - GrantCharacterToUser: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GrantCharacterToUser", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -563,6 +565,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkApple", request, "X-Authorization", callback, customData, extraHeaders); }, + LinkBattleNetAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkBattleNetAccount", request, "X-Authorization", callback, customData, extraHeaders); + }, + LinkCustomID: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkCustomID", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -583,6 +589,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkGoogleAccount", request, "X-Authorization", callback, customData, extraHeaders); }, + LinkGooglePlayGamesServicesAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkGooglePlayGamesServicesAccount", request, "X-Authorization", callback, customData, extraHeaders); + }, + LinkIOSDeviceID: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkIOSDeviceID", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -615,17 +625,14 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkTwitch", request, "X-Authorization", callback, customData, extraHeaders); }, - /** - * @deprecated Do not use - */ - LinkWindowsHello: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkWindowsHello", request, "X-Authorization", callback, customData, extraHeaders); - }, - LinkXboxAccount: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkXboxAccount", request, "X-Authorization", callback, customData, extraHeaders); }, + ListPlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/ListPlayerCustomProperties", request, "X-Authorization", callback, customData, extraHeaders); + }, + LoginWithAndroidDeviceID: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts @@ -641,7 +648,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -666,7 +672,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -676,6 +681,30 @@ PlayFab.ClientApi = { return new Promise(function(resolve){resolve(authenticationContext);}); }, + LoginWithBattleNet: function (request, callback, customData, extraHeaders) { + request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; + // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts + // Deep-copy the authenticationContext here to safely update it + var authenticationContext = JSON.parse(JSON.stringify(PlayFab._internalSettings.authenticationContext)); + var overloadCallback = function (result, error) { + if (result != null) { + if(result.data.SessionTicket != null) { + PlayFab._internalSettings.sessionTicket = result.data.SessionTicket; + } + if (result.data.EntityToken != null) { + PlayFab._internalSettings.entityToken = result.data.EntityToken.EntityToken; + } + // Apply the updates for the AuthenticationContext returned to the client + authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); + } + if (callback != null && typeof (callback) === "function") + callback(result, error); + }; + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithBattleNet", request, null, overloadCallback, customData, extraHeaders); + // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() + return new Promise(function(resolve){resolve(authenticationContext);}); + }, + LoginWithCustomID: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts @@ -691,7 +720,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -716,7 +744,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -741,7 +768,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -766,7 +792,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -791,7 +816,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -816,7 +840,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -826,7 +849,7 @@ PlayFab.ClientApi = { return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithIOSDeviceID: function (request, callback, customData, extraHeaders) { + LoginWithGooglePlayGamesServices: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -841,17 +864,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithIOSDeviceID", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithGooglePlayGamesServices", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithKongregate: function (request, callback, customData, extraHeaders) { + LoginWithIOSDeviceID: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -866,17 +888,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithKongregate", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithIOSDeviceID", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithNintendoServiceAccount: function (request, callback, customData, extraHeaders) { + LoginWithKongregate: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -891,17 +912,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithNintendoServiceAccount", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithKongregate", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithNintendoSwitchDeviceId: function (request, callback, customData, extraHeaders) { + LoginWithNintendoServiceAccount: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -916,17 +936,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithNintendoSwitchDeviceId", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithNintendoServiceAccount", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithOpenIdConnect: function (request, callback, customData, extraHeaders) { + LoginWithNintendoSwitchDeviceId: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -941,17 +960,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithOpenIdConnect", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithNintendoSwitchDeviceId", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithPlayFab: function (request, callback, customData, extraHeaders) { + LoginWithOpenIdConnect: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -966,17 +984,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithPlayFab", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithOpenIdConnect", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithPSN: function (request, callback, customData, extraHeaders) { + LoginWithPlayFab: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -991,17 +1008,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithPSN", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithPlayFab", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithSteam: function (request, callback, customData, extraHeaders) { + LoginWithPSN: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -1016,17 +1032,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithSteam", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithPSN", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithTwitch: function (request, callback, customData, extraHeaders) { + LoginWithSteam: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -1041,20 +1056,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithTwitch", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithSteam", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - /** - * @deprecated Do not use - */ - LoginWithWindowsHello: function (request, callback, customData, extraHeaders) { + LoginWithTwitch: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -1069,12 +1080,11 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithWindowsHello", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithTwitch", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, @@ -1094,7 +1104,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -1104,10 +1113,6 @@ PlayFab.ClientApi = { return new Promise(function(resolve){resolve(authenticationContext);}); }, - Matchmake: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/Matchmake", request, "X-Authorization", callback, customData, extraHeaders); - }, - OpenTrade: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/OpenTrade", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -1133,25 +1138,6 @@ PlayFab.ClientApi = { }, RegisterPlayFabUser: function (request, callback, customData, extraHeaders) { - request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; - // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts - // Deep-copy the authenticationContext here to safely update it - var authenticationContext = JSON.parse(JSON.stringify(PlayFab._internalSettings.authenticationContext)); - var overloadCallback = function (result, error) { - if (result != null && result.data.SessionTicket != null) { - PlayFab._internalSettings.sessionTicket = result.data.SessionTicket; - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); - } - if (callback != null && typeof (callback) === "function") - callback(result, error); - }; - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/RegisterPlayFabUser", request, null, overloadCallback, customData, extraHeaders); - }, - - /** - * @deprecated Do not use - */ - RegisterWithWindowsHello: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -1166,14 +1152,11 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/RegisterWithWindowsHello", request, null, overloadCallback, customData, extraHeaders); - // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() - return new Promise(function(resolve){resolve(authenticationContext);}); + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/RegisterPlayFabUser", request, null, overloadCallback, customData, extraHeaders); }, RemoveContactEmail: function (request, callback, customData, extraHeaders) { @@ -1224,10 +1207,6 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/SetPlayerSecret", request, "X-Authorization", callback, customData, extraHeaders); }, - StartGame: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/StartGame", request, "X-Authorization", callback, customData, extraHeaders); - }, - StartPurchase: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/StartPurchase", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -1244,6 +1223,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkApple", request, "X-Authorization", callback, customData, extraHeaders); }, + UnlinkBattleNetAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkBattleNetAccount", request, "X-Authorization", callback, customData, extraHeaders); + }, + UnlinkCustomID: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkCustomID", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -1264,6 +1247,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkGoogleAccount", request, "X-Authorization", callback, customData, extraHeaders); }, + UnlinkGooglePlayGamesServicesAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkGooglePlayGamesServicesAccount", request, "X-Authorization", callback, customData, extraHeaders); + }, + UnlinkIOSDeviceID: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkIOSDeviceID", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -1296,13 +1283,6 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkTwitch", request, "X-Authorization", callback, customData, extraHeaders); }, - /** - * @deprecated Do not use - */ - UnlinkWindowsHello: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkWindowsHello", request, "X-Authorization", callback, customData, extraHeaders); - }, - UnlinkXboxAccount: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkXboxAccount", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -1327,6 +1307,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UpdateCharacterStatistics", request, "X-Authorization", callback, customData, extraHeaders); }, + UpdatePlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UpdatePlayerCustomProperties", request, "X-Authorization", callback, customData, extraHeaders); + }, + UpdatePlayerStatistics: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UpdatePlayerStatistics", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -1375,19 +1359,6 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/WriteTitleEvent", request, "X-Authorization", callback, customData, extraHeaders); }, - _MultiStepClientLogin: function (needsAttribution) { - if (needsAttribution && !PlayFab.settings.disableAdvertising && PlayFab.settings.advertisingIdType !== null && PlayFab.settings.advertisingIdValue !== null) { - var request = {}; - if (PlayFab.settings.advertisingIdType === PlayFab.settings.AD_TYPE_IDFA) { - request.Idfa = PlayFab.settings.advertisingIdValue; - } else if (PlayFab.settings.advertisingIdType === PlayFab.settings.AD_TYPE_ANDROID_ID) { - request.Adid = PlayFab.settings.advertisingIdValue; - } else { - return; - } - PlayFab.ClientApi.AttributeInstall(request, null); - } - } }; var PlayFabClientSDK = PlayFab.ClientApi; diff --git a/PlayFabSdk/src/PlayFab/PlayFabCloudScriptApi.js b/PlayFabSdk/src/PlayFab/PlayFabCloudScriptApi.js index 5a315761..950a2bf7 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabCloudScriptApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabCloudScriptApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -257,6 +249,14 @@ PlayFab.CloudScriptApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/ExecuteFunction", request, "X-EntityToken", callback, customData, extraHeaders); }, + GetFunction: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/GetFunction", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ListEventHubFunctions: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/ListEventHubFunctions", request, "X-EntityToken", callback, customData, extraHeaders); + }, + ListFunctions: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/ListFunctions", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -285,6 +285,10 @@ PlayFab.CloudScriptApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/PostFunctionResultForScheduledTask", request, "X-EntityToken", callback, customData, extraHeaders); }, + RegisterEventHubFunction: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/RegisterEventHubFunction", request, "X-EntityToken", callback, customData, extraHeaders); + }, + RegisterHttpFunction: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/RegisterHttpFunction", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -296,6 +300,7 @@ PlayFab.CloudScriptApi = { UnregisterFunction: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/UnregisterFunction", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabCloudScriptSDK = PlayFab.CloudScriptApi; diff --git a/PlayFabSdk/src/PlayFab/PlayFabDataApi.js b/PlayFabSdk/src/PlayFab/PlayFabDataApi.js index 20c16985..9b7aebbc 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabDataApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabDataApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -276,6 +268,7 @@ PlayFab.DataApi = { SetObjects: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Object/SetObjects", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabDataSDK = PlayFab.DataApi; diff --git a/PlayFabSdk/src/PlayFab/PlayFabEconomyApi.js b/PlayFabSdk/src/PlayFab/PlayFabEconomyApi.js new file mode 100644 index 00000000..f0d972c4 --- /dev/null +++ b/PlayFabSdk/src/PlayFab/PlayFabEconomyApi.js @@ -0,0 +1,431 @@ +/// + +var PlayFab = typeof PlayFab != "undefined" ? PlayFab : {}; + +if(!PlayFab.settings) { + PlayFab.settings = { + titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) + developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) + GlobalHeaderInjection: null, + productionServerUrl: ".playfabapi.com" + } +} + +if(!PlayFab._internalSettings) { + PlayFab._internalSettings = { + entityToken: null, + sdkVersion: "1.217.260605", + requestGetParams: { + sdk: "JavaScriptSDK-1.217.260605" + }, + sessionTicket: null, + verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this + errorTitleId: "Must be have PlayFab.settings.titleId set to call this method", + errorLoggedIn: "Must be logged in to call this method", + errorEntityToken: "You must successfully call GetEntityToken before calling this", + errorSecretKey: "Must have PlayFab.settings.developerSecretKey set to call this method", + + GetServerUrl: function () { + if (!(PlayFab.settings.productionServerUrl.substring(0, 4) === "http")) { + if (PlayFab._internalSettings.verticalName) { + return "https://" + PlayFab._internalSettings.verticalName + PlayFab.settings.productionServerUrl; + } else { + return "https://" + PlayFab.settings.titleId + PlayFab.settings.productionServerUrl; + } + } else { + return PlayFab.settings.productionServerUrl; + } + }, + + InjectHeaders: function (xhr, headersObj) { + if (!headersObj) + return; + + for (var headerKey in headersObj) + { + try { + xhr.setRequestHeader(gHeaderKey, headersObj[headerKey]); + } catch (e) { + console.log("Failed to append header: " + headerKey + " = " + headersObj[headerKey] + "Error: " + e); + } + } + }, + + ExecuteRequest: function (url, request, authkey, authValue, callback, customData, extraHeaders) { + var resultPromise = new Promise(function (resolve, reject) { + if (callback != null && typeof (callback) !== "function") + throw "Callback must be null or a function"; + + if (request == null) + request = {}; + + var startTime = new Date(); + var requestBody = JSON.stringify(request); + + var urlArr = [url]; + var getParams = PlayFab._internalSettings.requestGetParams; + if (getParams != null) { + var firstParam = true; + for (var key in getParams) { + if (firstParam) { + urlArr.push("?"); + firstParam = false; + } else { + urlArr.push("&"); + } + urlArr.push(key); + urlArr.push("="); + urlArr.push(getParams[key]); + } + } + + var completeUrl = urlArr.join(""); + + var xhr = new XMLHttpRequest(); + // window.console.log("URL: " + completeUrl); + xhr.open("POST", completeUrl, true); + + xhr.setRequestHeader("Content-Type", "application/json"); + xhr.setRequestHeader("X-PlayFabSDK", "JavaScriptSDK-" + PlayFab._internalSettings.sdkVersion); + if (authkey != null) + xhr.setRequestHeader(authkey, authValue); + PlayFab._internalSettings.InjectHeaders(xhr, PlayFab.settings.GlobalHeaderInjection); + PlayFab._internalSettings.InjectHeaders(xhr, extraHeaders); + + xhr.onloadend = function () { + if (callback == null) + return; + + var result = PlayFab._internalSettings.GetPlayFabResponse(request, xhr, startTime, customData); + if (result.code === 200) { + callback(result, null); + } else { + callback(null, result); + } + } + + xhr.onerror = function () { + if (callback == null) + return; + + var result = PlayFab._internalSettings.GetPlayFabResponse(request, xhr, startTime, customData); + callback(null, result); + } + + xhr.send(requestBody); + xhr.onreadystatechange = function () { + if (this.readyState === 4) { + var xhrResult = PlayFab._internalSettings.GetPlayFabResponse(request, this, startTime, customData); + if (this.status === 200) { + resolve(xhrResult); + } else { + reject(xhrResult); + } + } + }; + }); + // Return a Promise so that calls to various API methods can be handled asynchronously + return resultPromise; + }, + + GetPlayFabResponse: function(request, xhr, startTime, customData) { + var result = null; + try { + // window.console.log("parsing json result: " + xhr.responseText); + result = JSON.parse(xhr.responseText); + } catch (e) { + result = { + code: 503, // Service Unavailable + status: "Service Unavailable", + error: "Connection error", + errorCode: 2, // PlayFabErrorCode.ConnectionError + errorMessage: xhr.responseText + }; + } + + result.CallBackTimeMS = new Date() - startTime; + result.Request = request; + result.CustomData = customData; + return result; + }, + + authenticationContext: { + PlayFabId: null, + EntityId: null, + EntityType: null, + SessionTicket: null, + EntityToken: null + }, + + UpdateAuthenticationContext: function (authenticationContext, result) { + var authenticationContextUpdates = {}; + if(result.data.PlayFabId !== null) { + PlayFab._internalSettings.authenticationContext.PlayFabId = result.data.PlayFabId; + authenticationContextUpdates.PlayFabId = result.data.PlayFabId; + } + if(result.data.SessionTicket !== null) { + PlayFab._internalSettings.authenticationContext.SessionTicket = result.data.SessionTicket; + authenticationContextUpdates.SessionTicket = result.data.SessionTicket; + } + if (result.data.EntityToken !== null) { + PlayFab._internalSettings.authenticationContext.EntityId = result.data.EntityToken.Entity.Id; + authenticationContextUpdates.EntityId = result.data.EntityToken.Entity.Id; + PlayFab._internalSettings.authenticationContext.EntityType = result.data.EntityToken.Entity.Type; + authenticationContextUpdates.EntityType = result.data.EntityToken.Entity.Type; + PlayFab._internalSettings.authenticationContext.EntityToken = result.data.EntityToken.EntityToken; + authenticationContextUpdates.EntityToken = result.data.EntityToken.EntityToken; + } + // Update the authenticationContext with values from the result + authenticationContext = Object.assign(authenticationContext, authenticationContextUpdates); + return authenticationContext; + }, + + AuthInfoMap: { + "X-EntityToken": { + authAttr: "entityToken", + authError: "errorEntityToken" + }, + "X-Authorization": { + authAttr: "sessionTicket", + authError: "errorLoggedIn" + }, + "X-SecretKey": { + authAttr: "developerSecretKey", + authError: "errorSecretKey" + } + }, + + GetAuthInfo: function (request, authKey) { + // Use the most-recently saved authKey, unless one was provided in the request via the AuthenticationContext + var authError = PlayFab._internalSettings.AuthInfoMap[authKey].authError; + var authAttr = PlayFab._internalSettings.AuthInfoMap[authKey].authAttr; + var defaultAuthValue = null; + if (authAttr === "entityToken") + defaultAuthValue = PlayFab._internalSettings.entityToken; + else if (authAttr === "sessionTicket") + defaultAuthValue = PlayFab._internalSettings.sessionTicket; + else if (authAttr === "developerSecretKey") + defaultAuthValue = PlayFab.settings.developerSecretKey; + var authValue = request.AuthenticationContext ? request.AuthenticationContext[authAttr] : defaultAuthValue; + return {"authKey": authKey, "authValue": authValue, "authError": authError}; + }, + + ExecuteRequestWrapper: function (apiURL, request, authKey, callback, customData, extraHeaders) { + var authValue = null; + if (authKey !== null){ + var authInfo = PlayFab._internalSettings.GetAuthInfo(request, authKey=authKey); + var authKey = authInfo.authKey, authValue = authInfo.authValue, authError = authInfo.authError; + + if (!authValue) throw authError; + } + return PlayFab._internalSettings.ExecuteRequest(PlayFab._internalSettings.GetServerUrl() + apiURL, request, authKey, authValue, callback, customData, extraHeaders); + } + } +} + +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; +PlayFab.GenerateErrorReport = function (error) { + if (error == null) + return ""; + var fullErrors = error.errorMessage; + for (var paramName in error.errorDetails) + for (var msgIdx in error.errorDetails[paramName]) + fullErrors += "\n" + paramName + ": " + error.errorDetails[paramName][msgIdx]; + return fullErrors; +}; + +PlayFab.EconomyApi = { + ForgetAllCredentials: function () { + PlayFab._internalSettings.sessionTicket = null; + PlayFab._internalSettings.entityToken = null; + }, + + AddInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/AddInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateDraftItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/CreateDraftItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateUploadUrls: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/CreateUploadUrls", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteEntityItemReviews: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/DeleteEntityItemReviews", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteInventoryCollection: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/DeleteInventoryCollection", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/DeleteInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/DeleteItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ExecuteInventoryOperations: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/ExecuteInventoryOperations", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ExecuteTransferOperations: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/ExecuteTransferOperations", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetCatalogConfig: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetCatalogConfig", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetDraftItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetDraftItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetDraftItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetDraftItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetEntityDraftItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetEntityDraftItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetEntityItemReview: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetEntityItemReview", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetInventoryCollectionIds: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/GetInventoryCollectionIds", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/GetInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetInventoryOperationStatus: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/GetInventoryOperationStatus", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetItemContainers: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItemContainers", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetItemModerationState: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItemModerationState", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetItemPublishStatus: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItemPublishStatus", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetItemReviews: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItemReviews", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetItemReviewSummary: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItemReviewSummary", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetTransactionHistory: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/GetTransactionHistory", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + PublishDraftItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/PublishDraftItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + PurchaseInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/PurchaseInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + RedeemAppleAppStoreInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/RedeemAppleAppStoreInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + RedeemAppleAppStoreWithJwsInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/RedeemAppleAppStoreWithJwsInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + RedeemGooglePlayInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/RedeemGooglePlayInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + RedeemMicrosoftStoreInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/RedeemMicrosoftStoreInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + RedeemNintendoEShopInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/RedeemNintendoEShopInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + RedeemPlayStationStoreInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/RedeemPlayStationStoreInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + RedeemSteamInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/RedeemSteamInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ReportItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/ReportItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ReportItemReview: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/ReportItemReview", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ReviewItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/ReviewItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SearchItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/SearchItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SetItemModerationState: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/SetItemModerationState", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SubmitItemReviewVote: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/SubmitItemReviewVote", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SubtractInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/SubtractInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + TakedownItemReviews: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/TakedownItemReviews", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + TransferInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/TransferInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UpdateCatalogConfig: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/UpdateCatalogConfig", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UpdateDraftItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/UpdateDraftItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UpdateInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/UpdateInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + +}; + +var PlayFabEconomySDK = PlayFab.EconomyApi; + diff --git a/PlayFabSdk/src/PlayFab/PlayFabEventsApi.js b/PlayFabSdk/src/PlayFab/PlayFabEventsApi.js index 31cb5e1e..3e2f69e6 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabEventsApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabEventsApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -249,6 +241,46 @@ PlayFab.EventsApi = { PlayFab._internalSettings.entityToken = null; }, + CreateTelemetryKey: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/CreateTelemetryKey", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteDataConnection: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/DeleteDataConnection", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteTelemetryKey: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/DeleteTelemetryKey", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetDataConnection: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/GetDataConnection", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetTelemetryKey: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/GetTelemetryKey", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ListDataConnections: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/ListDataConnections", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ListTelemetryKeys: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/ListTelemetryKeys", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SetDataConnection: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/SetDataConnection", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SetDataConnectionActive: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/SetDataConnectionActive", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SetTelemetryKeyActive: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/SetTelemetryKeyActive", request, "X-EntityToken", callback, customData, extraHeaders); + }, + WriteEvents: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/WriteEvents", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -256,6 +288,7 @@ PlayFab.EventsApi = { WriteTelemetryEvents: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/WriteTelemetryEvents", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabEventsSDK = PlayFab.EventsApi; diff --git a/PlayFabSdk/src/PlayFab/PlayFabExperimentationApi.js b/PlayFabSdk/src/PlayFab/PlayFabExperimentationApi.js index 36b6220f..83c1e8f5 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabExperimentationApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabExperimentationApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -300,6 +292,7 @@ PlayFab.ExperimentationApi = { UpdateExperiment: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Experimentation/UpdateExperiment", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabExperimentationSDK = PlayFab.ExperimentationApi; diff --git a/PlayFabSdk/src/PlayFab/PlayFabGroupsApi.js b/PlayFabSdk/src/PlayFab/PlayFabGroupsApi.js index 64382364..a7bc069a 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabGroupsApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabGroupsApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -348,6 +340,7 @@ PlayFab.GroupsApi = { UpdateRole: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Group/UpdateRole", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabGroupsSDK = PlayFab.GroupsApi; diff --git a/PlayFabSdk/src/PlayFab/PlayFabInsightsApi.js b/PlayFabSdk/src/PlayFab/PlayFabInsightsApi.js index 3f4a70e3..82e192c3 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabInsightsApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabInsightsApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -272,6 +264,7 @@ PlayFab.InsightsApi = { SetStorageRetention: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Insights/SetStorageRetention", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabInsightsSDK = PlayFab.InsightsApi; diff --git a/PlayFabSdk/src/PlayFab/PlayFabLocalizationApi.js b/PlayFabSdk/src/PlayFab/PlayFabLocalizationApi.js index be36aca6..4d6e370f 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabLocalizationApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabLocalizationApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -252,6 +244,7 @@ PlayFab.LocalizationApi = { GetLanguageList: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Locale/GetLanguageList", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabLocalizationSDK = PlayFab.LocalizationApi; diff --git a/PlayFabSdk/src/PlayFab/PlayFabMultiplayerApi.js b/PlayFabSdk/src/PlayFab/PlayFabMultiplayerApi.js index f995af77..5296503e 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabMultiplayerApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabMultiplayerApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -281,6 +273,10 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/CreateBuildWithProcessBasedServer", request, "X-EntityToken", callback, customData, extraHeaders); }, + CreateLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/CreateLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + CreateMatchmakingTicket: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Match/CreateMatchmakingTicket", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -325,14 +321,34 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/DeleteContainerImageRepository", request, "X-EntityToken", callback, customData, extraHeaders); }, + DeleteLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/DeleteLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + DeleteRemoteUser: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/DeleteRemoteUser", request, "X-EntityToken", callback, customData, extraHeaders); }, + DeleteSecret: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/DeleteSecret", request, "X-EntityToken", callback, customData, extraHeaders); + }, + EnableMultiplayerServersForTitle: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/EnableMultiplayerServersForTitle", request, "X-EntityToken", callback, customData, extraHeaders); }, + FindFriendLobbies: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/FindFriendLobbies", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + FindLobbies: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/FindLobbies", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetAssetDownloadUrl: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/GetAssetDownloadUrl", request, "X-EntityToken", callback, customData, extraHeaders); + }, + GetAssetUploadUrl: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/GetAssetUploadUrl", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -349,6 +365,10 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/GetContainerRegistryCredentials", request, "X-EntityToken", callback, customData, extraHeaders); }, + GetLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/GetLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + GetMatch: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Match/GetMatch", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -397,10 +417,34 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/GetTitleMultiplayerServersQuotas", request, "X-EntityToken", callback, customData, extraHeaders); }, + InviteToLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/InviteToLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + JoinArrangedLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/JoinArrangedLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + JoinLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/JoinLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + JoinLobbyAsServer: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/JoinLobbyAsServer", request, "X-EntityToken", callback, customData, extraHeaders); + }, + JoinMatchmakingTicket: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Match/JoinMatchmakingTicket", request, "X-EntityToken", callback, customData, extraHeaders); }, + LeaveLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/LeaveLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + LeaveLobbyAsServer: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/LeaveLobbyAsServer", request, "X-EntityToken", callback, customData, extraHeaders); + }, + ListArchivedMultiplayerServers: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/ListArchivedMultiplayerServers", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -449,6 +493,10 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/ListQosServersForTitle", request, "X-EntityToken", callback, customData, extraHeaders); }, + ListSecretSummaries: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/ListSecretSummaries", request, "X-EntityToken", callback, customData, extraHeaders); + }, + ListServerBackfillTicketsForPlayer: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Match/ListServerBackfillTicketsForPlayer", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -465,10 +513,18 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Match/RemoveMatchmakingQueue", request, "X-EntityToken", callback, customData, extraHeaders); }, + RemoveMember: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/RemoveMember", request, "X-EntityToken", callback, customData, extraHeaders); + }, + RequestMultiplayerServer: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/RequestMultiplayerServer", request, "X-EntityToken", callback, customData, extraHeaders); }, + RequestPartyService: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Party/RequestPartyService", request, "X-EntityToken", callback, customData, extraHeaders); + }, + RolloverContainerRegistryCredentials: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/RolloverContainerRegistryCredentials", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -481,6 +537,22 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/ShutdownMultiplayerServer", request, "X-EntityToken", callback, customData, extraHeaders); }, + SubscribeToLobbyResource: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/SubscribeToLobbyResource", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SubscribeToMatchmakingResource: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Match/SubscribeToMatchmakingResource", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UnsubscribeFromLobbyResource: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/UnsubscribeFromLobbyResource", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UnsubscribeFromMatchmakingResource: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Match/UnsubscribeFromMatchmakingResource", request, "X-EntityToken", callback, customData, extraHeaders); + }, + UntagContainerImage: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/UntagContainerImage", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -501,9 +573,22 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/UpdateBuildRegions", request, "X-EntityToken", callback, customData, extraHeaders); }, + UpdateLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/UpdateLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UpdateLobbyAsServer: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/UpdateLobbyAsServer", request, "X-EntityToken", callback, customData, extraHeaders); + }, + UploadCertificate: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/UploadCertificate", request, "X-EntityToken", callback, customData, extraHeaders); }, + + UploadSecret: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/UploadSecret", request, "X-EntityToken", callback, customData, extraHeaders); + }, + }; var PlayFabMultiplayerSDK = PlayFab.MultiplayerApi; diff --git a/PlayFabSdk/src/PlayFab/PlayFabProfilesApi.js b/PlayFabSdk/src/PlayFab/PlayFabProfilesApi.js index 36565fbe..4458cc60 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabProfilesApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabProfilesApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -265,6 +257,14 @@ PlayFab.ProfilesApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Profile/GetTitlePlayersFromMasterPlayerAccountIds", request, "X-EntityToken", callback, customData, extraHeaders); }, + GetTitlePlayersFromXboxLiveIDs: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Profile/GetTitlePlayersFromXboxLiveIDs", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SetDisplayName: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Profile/SetDisplayName", request, "X-EntityToken", callback, customData, extraHeaders); + }, + SetGlobalPolicy: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Profile/SetGlobalPolicy", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -276,6 +276,7 @@ PlayFab.ProfilesApi = { SetProfilePolicy: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Profile/SetProfilePolicy", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabProfilesSDK = PlayFab.ProfilesApi; diff --git a/PlayFabSdk/src/PlayFab/PlayFabMatchmakerApi.js b/PlayFabSdk/src/PlayFab/PlayFabProgressionApi.js similarity index 63% rename from PlayFabSdk/src/PlayFab/PlayFabMatchmakerApi.js rename to PlayFabSdk/src/PlayFab/PlayFabProgressionApi.js index 7b16e38d..18a54ef9 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabMatchmakerApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabProgressionApi.js @@ -1,4 +1,4 @@ -/// +/// var PlayFab = typeof PlayFab != "undefined" ? PlayFab : {}; @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -243,32 +235,109 @@ PlayFab.GenerateErrorReport = function (error) { return fullErrors; }; -PlayFab.MatchmakerApi = { +PlayFab.ProgressionApi = { ForgetAllCredentials: function () { PlayFab._internalSettings.sessionTicket = null; PlayFab._internalSettings.entityToken = null; }, - AuthUser: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/AuthUser", request, "X-SecretKey", callback, customData, extraHeaders); + CreateLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/CreateLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/CreateStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/DeleteLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteLeaderboardEntries: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/DeleteLeaderboardEntries", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/DeleteStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteStatistics: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/DeleteStatistics", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetFriendLeaderboardForEntity: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetFriendLeaderboardForEntity", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboard: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboard", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboardAroundEntity: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboardAroundEntity", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboardForEntities: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboardForEntities", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/GetStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetStatistics: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/GetStatistics", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetStatisticsForEntities: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/GetStatisticsForEntities", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + IncrementLeaderboardVersion: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/IncrementLeaderboardVersion", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + IncrementStatisticVersion: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/IncrementStatisticVersion", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ListLeaderboardDefinitions: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/ListLeaderboardDefinitions", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ListStatisticDefinitions: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/ListStatisticDefinitions", request, "X-EntityToken", callback, customData, extraHeaders); }, - PlayerJoined: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/PlayerJoined", request, "X-SecretKey", callback, customData, extraHeaders); + UnlinkAggregationSourceFromStatistic: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/UnlinkAggregationSourceFromStatistic", request, "X-EntityToken", callback, customData, extraHeaders); }, - PlayerLeft: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/PlayerLeft", request, "X-SecretKey", callback, customData, extraHeaders); + UnlinkLeaderboardFromStatistic: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/UnlinkLeaderboardFromStatistic", request, "X-EntityToken", callback, customData, extraHeaders); }, - StartGame: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/StartGame", request, "X-SecretKey", callback, customData, extraHeaders); + UpdateLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/UpdateLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); }, - UserInfo: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/UserInfo", request, "X-SecretKey", callback, customData, extraHeaders); + UpdateLeaderboardEntries: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/UpdateLeaderboardEntries", request, "X-EntityToken", callback, customData, extraHeaders); }, + + UpdateStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/UpdateStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UpdateStatistics: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/UpdateStatistics", request, "X-EntityToken", callback, customData, extraHeaders); + }, + }; -var PlayFabMatchmakerSDK = PlayFab.MatchmakerApi; +var PlayFabProgressionSDK = PlayFab.ProgressionApi; diff --git a/PlayFabSdk/src/PlayFab/PlayFabServerApi.js b/PlayFabSdk/src/PlayFab/PlayFabServerApi.js index 4c7412b5..b57d0ebd 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabServerApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabServerApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -261,6 +253,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/AddGenericID", request, "X-SecretKey", callback, customData, extraHeaders); }, + AddOrUpdateContactEmail: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/AddOrUpdateContactEmail", request, "X-SecretKey", callback, customData, extraHeaders); + }, + AddPlayerTag: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/AddPlayerTag", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -301,6 +297,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/DeletePlayer", request, "X-SecretKey", callback, customData, extraHeaders); }, + DeletePlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/DeletePlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); + }, + DeletePushNotificationTemplate: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/DeletePushNotificationTemplate", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -309,10 +309,6 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/DeleteSharedGroup", request, "X-SecretKey", callback, customData, extraHeaders); }, - DeregisterGame: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/DeregisterGame", request, "X-SecretKey", callback, customData, extraHeaders); - }, - EvaluateRandomResultTable: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/EvaluateRandomResultTable", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -321,6 +317,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/ExecuteCloudScript", request, "X-SecretKey", callback, customData, extraHeaders); }, + ExportPlayersInSegment: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/ExportPlayersInSegment", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetAllSegments: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetAllSegments", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -389,6 +389,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayerCombinedInfo", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetPlayerCustomProperty: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayerCustomProperty", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetPlayerProfile: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayerProfile", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -397,10 +401,6 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayerSegments", request, "X-SecretKey", callback, customData, extraHeaders); }, - GetPlayersInSegment: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayersInSegment", request, "X-SecretKey", callback, customData, extraHeaders); - }, - GetPlayerStatistics: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayerStatistics", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -413,6 +413,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayerTags", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetPlayFabIDsFromBattleNetAccountIds: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromBattleNetAccountIds", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromFacebookIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromFacebookIDs", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -425,18 +429,42 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromGenericIDs", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetPlayFabIDsFromNintendoServiceAccountIds: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromNintendoServiceAccountIds", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromNintendoSwitchDeviceIds: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromNintendoSwitchDeviceIds", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetPlayFabIDsFromOpenIdSubjectIdentifiers: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromOpenIdSubjectIdentifiers", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromPSNAccountIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromPSNAccountIDs", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetPlayFabIDsFromPSNOnlineIDs: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromPSNOnlineIDs", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + GetPlayFabIDsFromServerCustomIDs: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromServerCustomIDs", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromSteamIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromSteamIDs", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetPlayFabIDsFromSteamNames: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromSteamNames", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + GetPlayFabIDsFromTwitchIDs: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromTwitchIDs", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromXboxLiveIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromXboxLiveIDs", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -449,6 +477,14 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetRandomResultTables", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetSegmentExport: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetSegmentExport", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + GetSegmentPlayerCount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetSegmentPlayerCount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetServerCustomIDsFromPlayFabIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetServerCustomIDsFromPlayFabIDs", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -529,18 +565,74 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GrantItemsToUsers", request, "X-SecretKey", callback, customData, extraHeaders); }, + LinkBattleNetAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkBattleNetAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LinkNintendoServiceAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkNintendoServiceAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LinkNintendoServiceAccountSubject: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkNintendoServiceAccountSubject", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LinkNintendoSwitchDeviceId: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkNintendoSwitchDeviceId", request, "X-SecretKey", callback, customData, extraHeaders); + }, + LinkPSNAccount: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkPSNAccount", request, "X-SecretKey", callback, customData, extraHeaders); }, + LinkPSNId: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkPSNId", request, "X-SecretKey", callback, customData, extraHeaders); + }, + LinkServerCustomId: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkServerCustomId", request, "X-SecretKey", callback, customData, extraHeaders); }, + LinkSteamId: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkSteamId", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LinkTwitchAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkTwitchAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + LinkXboxAccount: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkXboxAccount", request, "X-SecretKey", callback, customData, extraHeaders); }, + LinkXboxId: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkXboxId", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + ListPlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/ListPlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LoginWithAndroidDeviceID: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithAndroidDeviceID", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LoginWithBattleNet: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithBattleNet", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LoginWithCustomID: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithCustomID", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LoginWithIOSDeviceID: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithIOSDeviceID", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LoginWithPSN: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithPSN", request, "X-SecretKey", callback, customData, extraHeaders); + }, + LoginWithServerCustomId: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithServerCustomId", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -549,6 +641,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithSteamId", request, "X-SecretKey", callback, customData, extraHeaders); }, + LoginWithTwitch: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithTwitch", request, "X-SecretKey", callback, customData, extraHeaders); + }, + LoginWithXbox: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithXbox", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -573,26 +669,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/MoveItemToUserFromCharacter", request, "X-SecretKey", callback, customData, extraHeaders); }, - NotifyMatchmakerPlayerLeft: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/NotifyMatchmakerPlayerLeft", request, "X-SecretKey", callback, customData, extraHeaders); - }, - RedeemCoupon: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/RedeemCoupon", request, "X-SecretKey", callback, customData, extraHeaders); }, - RedeemMatchmakerTicket: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/RedeemMatchmakerTicket", request, "X-SecretKey", callback, customData, extraHeaders); - }, - - RefreshGameServerInstanceHeartbeat: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/RefreshGameServerInstanceHeartbeat", request, "X-SecretKey", callback, customData, extraHeaders); - }, - - RegisterGame: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/RegisterGame", request, "X-SecretKey", callback, customData, extraHeaders); - }, - RemoveFriend: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/RemoveFriend", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -653,18 +733,6 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/SetFriendTags", request, "X-SecretKey", callback, customData, extraHeaders); }, - SetGameServerInstanceData: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/SetGameServerInstanceData", request, "X-SecretKey", callback, customData, extraHeaders); - }, - - SetGameServerInstanceState: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/SetGameServerInstanceState", request, "X-SecretKey", callback, customData, extraHeaders); - }, - - SetGameServerInstanceTags: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/SetGameServerInstanceTags", request, "X-SecretKey", callback, customData, extraHeaders); - }, - SetPlayerSecret: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/SetPlayerSecret", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -689,6 +757,34 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/SubtractUserVirtualCurrency", request, "X-SecretKey", callback, customData, extraHeaders); }, + UnlinkApple: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkApple", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + UnlinkBattleNetAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkBattleNetAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + UnlinkFacebookAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkFacebookAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + UnlinkFacebookInstantGamesId: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkFacebookInstantGamesId", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + UnlinkGameCenterAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkGameCenterAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + UnlinkNintendoServiceAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkNintendoServiceAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + UnlinkNintendoSwitchDeviceId: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkNintendoSwitchDeviceId", request, "X-SecretKey", callback, customData, extraHeaders); + }, + UnlinkPSNAccount: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkPSNAccount", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -697,6 +793,14 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkServerCustomId", request, "X-SecretKey", callback, customData, extraHeaders); }, + UnlinkSteamId: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkSteamId", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + UnlinkTwitchAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkTwitchAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + UnlinkXboxAccount: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkXboxAccount", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -733,6 +837,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UpdateCharacterStatistics", request, "X-SecretKey", callback, customData, extraHeaders); }, + UpdatePlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UpdatePlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); + }, + UpdatePlayerStatistics: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UpdatePlayerStatistics", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -780,6 +888,7 @@ PlayFab.ServerApi = { WriteTitleEvent: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/WriteTitleEvent", request, "X-SecretKey", callback, customData, extraHeaders); }, + }; var PlayFabServerSDK = PlayFab.ServerApi; diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabAddonApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabAddonApi.d.ts new file mode 100644 index 00000000..0abfa783 --- /dev/null +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabAddonApi.d.ts @@ -0,0 +1,739 @@ +/// + +declare module PlayFabAddonModule { + export interface IPlayFabAddon { + ForgetAllCredentials(): void; + + /** + * Creates the Apple addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdateapple + */ + CreateOrUpdateApple(request: PlayFabAddonModels.CreateOrUpdateAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the Facebook addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatefacebook + */ + CreateOrUpdateFacebook(request: PlayFabAddonModels.CreateOrUpdateFacebookRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the Facebook Instant Games addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatefacebookinstantgames + */ + CreateOrUpdateFacebookInstantGames(request: PlayFabAddonModels.CreateOrUpdateFacebookInstantGamesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the Google addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdategoogle + */ + CreateOrUpdateGoogle(request: PlayFabAddonModels.CreateOrUpdateGoogleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the Kongregate addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatekongregate + */ + CreateOrUpdateKongregate(request: PlayFabAddonModels.CreateOrUpdateKongregateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the Nintendo addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatenintendo + */ + CreateOrUpdateNintendo(request: PlayFabAddonModels.CreateOrUpdateNintendoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the PSN addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatepsn + */ + CreateOrUpdatePSN(request: PlayFabAddonModels.CreateOrUpdatePSNRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the Steam addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatesteam + */ + CreateOrUpdateSteam(request: PlayFabAddonModels.CreateOrUpdateSteamRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the ToxMod addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatetoxmod + */ + CreateOrUpdateToxMod(request: PlayFabAddonModels.CreateOrUpdateToxModRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the Twitch addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatetwitch + */ + CreateOrUpdateTwitch(request: PlayFabAddonModels.CreateOrUpdateTwitchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Apple addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deleteapple + */ + DeleteApple(request: PlayFabAddonModels.DeleteAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Facebook addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletefacebook + */ + DeleteFacebook(request: PlayFabAddonModels.DeleteFacebookRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Facebook addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletefacebookinstantgames + */ + DeleteFacebookInstantGames(request: PlayFabAddonModels.DeleteFacebookInstantGamesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Google addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletegoogle + */ + DeleteGoogle(request: PlayFabAddonModels.DeleteGoogleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Kongregate addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletekongregate + */ + DeleteKongregate(request: PlayFabAddonModels.DeleteKongregateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Nintendo addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletenintendo + */ + DeleteNintendo(request: PlayFabAddonModels.DeleteNintendoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the PSN addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletepsn + */ + DeletePSN(request: PlayFabAddonModels.DeletePSNRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Steam addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletesteam + */ + DeleteSteam(request: PlayFabAddonModels.DeleteSteamRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the ToxMod addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletetoxmod + */ + DeleteToxMod(request: PlayFabAddonModels.DeleteToxModRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Twitch addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletetwitch + */ + DeleteTwitch(request: PlayFabAddonModels.DeleteTwitchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Apple addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getapple + */ + GetApple(request: PlayFabAddonModels.GetAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Facebook addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getfacebook + */ + GetFacebook(request: PlayFabAddonModels.GetFacebookRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Facebook Instant Games addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getfacebookinstantgames + */ + GetFacebookInstantGames(request: PlayFabAddonModels.GetFacebookInstantGamesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Google addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getgoogle + */ + GetGoogle(request: PlayFabAddonModels.GetGoogleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Kongregate addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getkongregate + */ + GetKongregate(request: PlayFabAddonModels.GetKongregateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Nintendo addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getnintendo + */ + GetNintendo(request: PlayFabAddonModels.GetNintendoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the PSN addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getpsn + */ + GetPSN(request: PlayFabAddonModels.GetPSNRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Steam addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getsteam + */ + GetSteam(request: PlayFabAddonModels.GetSteamRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the ToxMod addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/gettoxmod + */ + GetToxMod(request: PlayFabAddonModels.GetToxModRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Twitch addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/gettwitch + */ + GetTwitch(request: PlayFabAddonModels.GetTwitchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + + } +} + +declare module PlayFabAddonModels { + export interface CreateOrUpdateAppleRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Allow validation of receipts from the Apple production environment. Required for app releases. */ + AllowProduction?: boolean; + /** Allow validation of receipts from the Apple sandbox environment. Typically used while testing. */ + AllowSandbox?: boolean; + /** iOS App Bundle ID obtained after setting up your app in the App Store. */ + AppBundleId: string; + /** AppId obtained after setting up your app in the App Store. */ + AppId?: string; + /** iOS App Shared Secret obtained after setting up your app in the App Store. */ + AppSharedSecret?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + /** + * Ignore expiration date for identity tokens. Be aware that when set to true this can invalidate expired tokens in the + * case where Apple rotates their signing keys. + */ + IgnoreExpirationDate?: boolean; + /** IssuerId obtained after setting up your app in the App Store. */ + IssuerId?: string; + /** KeyId obtained after setting up your app in the App Store. */ + KeyId?: string; + /** PrivateKey obtained after setting up your app in the App Store. */ + PrivateKey?: string; + /** Require secure authentication only for this app. */ + RequireSecureAuthentication?: boolean; + + } + + export interface CreateOrUpdateAppleResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateFacebookInstantGamesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Facebook App ID obtained after setting up your app in Facebook Instant Games. */ + AppID: string; + /** Facebook App Secret obtained after setting up your app in Facebook Instant Games. */ + AppSecret: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + + } + + export interface CreateOrUpdateFacebookInstantGamesResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateFacebookRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Facebook App ID obtained after setting up your app in Facebook. */ + AppID: string; + /** Facebook App Secret obtained after setting up your app in Facebook. */ + AppSecret: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + /** Email address for purchase dispute notifications. */ + NotificationEmail: string; + + } + + export interface CreateOrUpdateFacebookResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateGoogleRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Google App License Key obtained after setting up your app in the Google Play developer portal. Required if using Google + * receipt validation. + */ + AppLicenseKey?: string; + /** + * Google App Package ID obtained after setting up your app in the Google Play developer portal. Required if using Google + * receipt validation. + */ + AppPackageID?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + /** + * Google OAuth Client ID obtained through the Google Developer Console by creating a new set of "OAuth Client ID". + * Required if using Google Authentication. + */ + OAuthClientID?: string; + /** + * Google OAuth Client Secret obtained through the Google Developer Console by creating a new set of "OAuth Client ID". + * Required if using Google Authentication. + */ + OAuthClientSecret?: string; + /** + * Authorized Redirect Uri obtained through the Google Developer Console. This currently defaults to + * https://oauth.playfab.com/oauth2/google. If you are authenticating players via browser, please update this to your own + * domain. + */ + OAuthCustomRedirectUri?: string; + /** Needed to enable pending purchase handling and subscription processing. */ + ServiceAccountKey?: string; + + } + + export interface CreateOrUpdateGoogleResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateKongregateRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + /** Kongregate Secret API Key obtained after setting up your game in your Kongregate developer account. */ + SecretAPIKey: string; + + } + + export interface CreateOrUpdateKongregateResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateNintendoRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Nintendo Switch Application ID, without the "0x" prefix. */ + ApplicationID?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** List of Nintendo Environments, currently supporting up to 4. Needs Catalog enabled. */ + Environments?: NintendoEnvironment[]; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + /** List of Nintendo Subscription Environments, currently supporting up to 4. Needs Catalog enabled. */ + SubscriptionEnvironments?: NintendoEnvironment[]; + + } + + export interface CreateOrUpdateNintendoResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdatePSNRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Client ID obtained after setting up your game with Sony. This one is associated with the existing PS4 marketplace. */ + ClientID?: string; + /** Client secret obtained after setting up your game with Sony. This one is associated with the existing PS4 marketplace. */ + ClientSecret?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + /** + * Client ID obtained after setting up your game with Sony. This one is associated with the modern marketplace, which + * includes PS5, cross-generation for PS4, and unified entitlements. + */ + NextGenClientID?: string; + /** + * Client secret obtained after setting up your game with Sony. This one is associated with the modern marketplace, which + * includes PS5, cross-generation for PS4, and unified entitlements. + */ + NextGenClientSecret?: string; + + } + + export interface CreateOrUpdatePSNResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateSteamRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Application ID obtained after setting up your app in Valve's developer portal. */ + ApplicationId: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Enforce usage of AzurePlayFab identity in user authentication tickets. */ + EnforceServiceSpecificTickets?: boolean; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + /** Sercet Key obtained after setting up your app in Valve's developer portal. */ + SecretKey: string; + /** Use Steam Payments sandbox endpoint for test transactions. */ + UseSandbox?: boolean; + + } + + export interface CreateOrUpdateSteamResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateToxModRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Account ID obtained after creating your ToxMod developer account. */ + AccountId: string; + /** Account Key obtained after creating your ToxMod developer account. */ + AccountKey: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Whether ToxMod Addon is Enabled by Title. */ + Enabled: boolean; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + + } + + export interface CreateOrUpdateToxModResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateTwitchRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Client ID obtained after creating your Twitch developer account. */ + ClientID?: string; + /** Client Secret obtained after creating your Twitch developer account. */ + ClientSecret?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + + } + + export interface CreateOrUpdateTwitchResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteAppleRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteAppleResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteFacebookInstantGamesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteFacebookInstantGamesResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteFacebookRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteFacebookResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteGoogleRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteGoogleResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteKongregateRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteKongregateResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteNintendoRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteNintendoResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeletePSNRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeletePSNResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteSteamRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteSteamResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteToxModRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteToxModResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteTwitchRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteTwitchResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface EntityKey { + /** Unique ID of the entity. */ + Id: string; + /** Entity type. See https://docs.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types */ + Type?: string; + + } + + export interface GetAppleRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetAppleResponse extends PlayFabModule.IPlayFabResultCommon { + /** iOS App Bundle ID obtained after setting up your app in the App Store. */ + AppBundleId?: string; + /** Addon status. */ + Created: boolean; + /** Ignore expiration date for identity tokens. */ + IgnoreExpirationDate?: boolean; + /** Require secure authentication only for this app. */ + RequireSecureAuthentication?: boolean; + + } + + export interface GetFacebookInstantGamesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetFacebookInstantGamesResponse extends PlayFabModule.IPlayFabResultCommon { + /** Facebook App ID obtained after setting up your app in Facebook Instant Games. */ + AppID?: string; + /** Addon status. */ + Created: boolean; + + } + + export interface GetFacebookRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetFacebookResponse extends PlayFabModule.IPlayFabResultCommon { + /** Facebook App ID obtained after setting up your app in Facebook. */ + AppID?: string; + /** Addon status. */ + Created: boolean; + /** Email address for purchase dispute notifications. */ + NotificationEmail?: string; + + } + + export interface GetGoogleRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetGoogleResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * Google App Package ID obtained after setting up your app in the Google Play developer portal. Required if using Google + * receipt validation. + */ + AppPackageID?: string; + /** Addon status. */ + Created: boolean; + /** + * Google OAuth Client ID obtained through the Google Developer Console by creating a new set of "OAuth Client ID". + * Required if using Google Authentication. + */ + OAuthClientID?: string; + /** + * Authorized Redirect Uri obtained through the Google Developer Console. This currently defaults to + * https://oauth.playfab.com/oauth2/google. If you are authenticating players via browser, please update this to your own + * domain. + */ + OauthCustomRedirectUri?: string; + + } + + export interface GetKongregateRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetKongregateResponse extends PlayFabModule.IPlayFabResultCommon { + /** Addon status. */ + Created: boolean; + + } + + export interface GetNintendoRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetNintendoResponse extends PlayFabModule.IPlayFabResultCommon { + /** Nintendo Switch Application ID, without the "0x" prefix. */ + ApplicationID?: string; + /** Addon status. */ + Created: boolean; + /** List of Nintendo Environments, currently supporting up to 4. */ + Environments?: NintendoEnvironment[]; + /** List of Nintendo Subscription Environments associated to a secondary AppId, currently supporting up to 4. */ + SecondarySubscriptionEnvironments?: NintendoEnvironment[]; + /** List of Nintendo Subscription Environments, currently supporting up to 4. */ + SubscriptionEnvironments?: NintendoEnvironment[]; + + } + + export interface GetPSNRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetPSNResponse extends PlayFabModule.IPlayFabResultCommon { + /** Client ID obtained after setting up your game with Sony. This one is associated with the existing PS4 marketplace. */ + ClientID?: string; + /** Addon status. */ + Created: boolean; + /** + * Client ID obtained after setting up your game with Sony. This one is associated with the modern marketplace, which + * includes PS5, cross-generation for PS4, and unified entitlements. + */ + NextGenClientID?: string; + + } + + export interface GetSteamRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetSteamResponse extends PlayFabModule.IPlayFabResultCommon { + /** Application ID obtained after setting up your game in Valve's developer portal. */ + ApplicationId?: string; + /** Addon status. */ + Created: boolean; + /** Enforce usage of AzurePlayFab identity in user authentication tickets. */ + EnforceServiceSpecificTickets?: boolean; + /** Use Steam Payments sandbox endpoint for test transactions. */ + UseSandbox?: boolean; + + } + + export interface GetToxModRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetToxModResponse extends PlayFabModule.IPlayFabResultCommon { + /** Account ID obtained after creating your Twitch developer account. */ + AccountId?: string; + /** Account Key obtained after creating your Twitch developer account. */ + AccountKey?: string; + /** Addon status. */ + Created: boolean; + /** Whether the ToxMod Addon is enabled by the title. */ + Enabled: boolean; + + } + + export interface GetTwitchRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetTwitchResponse extends PlayFabModule.IPlayFabResultCommon { + /** Client ID obtained after creating your Twitch developer account. */ + ClientID?: string; + /** Addon status. */ + Created: boolean; + + } + + export interface NintendoEnvironment { + /** Client ID for the Nintendo Environment. */ + ClientID?: string; + /** Client Secret for the Nintendo Environment. */ + ClientSecret?: string; + /** ID for the Nintendo Environment. */ + ID?: string; + + } + + +} diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabAdminApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabAdminApi.d.ts index 7d66dc50..8a96312d 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabAdminApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabAdminApi.d.ts @@ -8,610 +8,640 @@ declare module PlayFabAdminModule { * Abort an ongoing task instance. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/aborttaskinstance */ - AbortTaskInstance(request: PlayFabAdminModels.AbortTaskInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AbortTaskInstance(request: PlayFabAdminModels.AbortTaskInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Update news item to include localized version * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/addlocalizednews */ - AddLocalizedNews(request: PlayFabAdminModels.AddLocalizedNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddLocalizedNews(request: PlayFabAdminModels.AddLocalizedNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds a new news item to the title's news feed * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/addnews */ - AddNews(request: PlayFabAdminModels.AddNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddNews(request: PlayFabAdminModels.AddNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds a given tag to a player profile. The tag's namespace is automatically generated based on the source of the tag. * https://docs.microsoft.com/rest/api/playfab/admin/playstream/addplayertag */ - AddPlayerTag(request: PlayFabAdminModels.AddPlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddPlayerTag(request: PlayFabAdminModels.AddPlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds the game server executable specified (previously uploaded - see GetServerBuildUploadUrl) to the set of those a - * client is permitted to request in a call to StartGame - * https://docs.microsoft.com/rest/api/playfab/admin/custom-server-management/addserverbuild - */ - AddServerBuild(request: PlayFabAdminModels.AddServerBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Increments the specified virtual currency by the stated amount + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Increments the specified virtual currency by the stated amount * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/adduservirtualcurrency */ - AddUserVirtualCurrency(request: PlayFabAdminModels.AddUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddUserVirtualCurrency(request: PlayFabAdminModels.AddUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds one or more virtual currencies to the set defined for the title. Virtual Currencies have a maximum value of - * 2,147,483,647 when granted to a player. Any value over that will be discarded. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Adds one or more virtual currencies to the set defined for the title. Virtual Currencies have a maximum + * value of 2,147,483,647 when granted to a player. Any value over that will be discarded. * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/addvirtualcurrencytypes */ - AddVirtualCurrencyTypes(request: PlayFabAdminModels.AddVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddVirtualCurrencyTypes(request: PlayFabAdminModels.AddVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Bans users by PlayFab ID with optional IP address, or MAC address for the provided game. + * Bans users by PlayFab ID with optional IP address for the provided game. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/banusers */ - BanUsers(request: PlayFabAdminModels.BanUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + BanUsers(request: PlayFabAdminModels.BanUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Checks the global count for the limited edition item. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Checks the global count for the limited edition item. * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/checklimitededitionitemavailability */ - CheckLimitedEditionItemAvailability(request: PlayFabAdminModels.CheckLimitedEditionItemAvailabilityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CheckLimitedEditionItemAvailability(request: PlayFabAdminModels.CheckLimitedEditionItemAvailabilityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Create an ActionsOnPlayersInSegment task, which iterates through all players in a segment to execute action. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/createactionsonplayersinsegmenttask */ - CreateActionsOnPlayersInSegmentTask(request: PlayFabAdminModels.CreateActionsOnPlayerSegmentTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateActionsOnPlayersInSegmentTask(request: PlayFabAdminModels.CreateActionsOnPlayerSegmentTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Create a CloudScript task, which can run a CloudScript on a schedule. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/createcloudscripttask */ - CreateCloudScriptTask(request: PlayFabAdminModels.CreateCloudScriptTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateCloudScriptTask(request: PlayFabAdminModels.CreateCloudScriptTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Create a Insights Scheduled Scaling task, which can scale Insights Performance Units on a schedule * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/createinsightsscheduledscalingtask */ - CreateInsightsScheduledScalingTask(request: PlayFabAdminModels.CreateInsightsScheduledScalingTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateInsightsScheduledScalingTask(request: PlayFabAdminModels.CreateInsightsScheduledScalingTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Registers a relationship between a title and an Open ID Connect provider. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/createopenidconnection */ - CreateOpenIdConnection(request: PlayFabAdminModels.CreateOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateOpenIdConnection(request: PlayFabAdminModels.CreateOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a new Player Shared Secret Key. It may take up to 5 minutes for this key to become generally available after * this API returns. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/createplayersharedsecret */ - CreatePlayerSharedSecret(request: PlayFabAdminModels.CreatePlayerSharedSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreatePlayerSharedSecret(request: PlayFabAdminModels.CreatePlayerSharedSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds a new player statistic configuration to the title, optionally allowing the developer to specify a reset interval * and an aggregation method. * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/createplayerstatisticdefinition */ - CreatePlayerStatisticDefinition(request: PlayFabAdminModels.CreatePlayerStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreatePlayerStatisticDefinition(request: PlayFabAdminModels.CreatePlayerStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a new player segment by defining the conditions on player properties. Also, create actions to target the player * segments for a title. * https://docs.microsoft.com/rest/api/playfab/admin/segments/createsegment */ - CreateSegment(request: PlayFabAdminModels.CreateSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateSegment(request: PlayFabAdminModels.CreateSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Delete a content file from the title. When deleting a file that does not exist, it returns success. * https://docs.microsoft.com/rest/api/playfab/admin/content/deletecontent */ - DeleteContent(request: PlayFabAdminModels.DeleteContentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteContent(request: PlayFabAdminModels.DeleteContentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes a master player account entirely from all titles and deletes all associated data * https://docs.microsoft.com/rest/api/playfab/admin/account-management/deletemasterplayeraccount */ - DeleteMasterPlayerAccount(request: PlayFabAdminModels.DeleteMasterPlayerAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteMasterPlayerAccount(request: PlayFabAdminModels.DeleteMasterPlayerAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes PlayStream and telemetry event data associated with the master player account from PlayFab storage + * https://docs.microsoft.com/rest/api/playfab/admin/account-management/deletemasterplayereventdata + */ + DeleteMasterPlayerEventData(request: PlayFabAdminModels.DeleteMasterPlayerEventDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes a player's subscription + * https://docs.microsoft.com/rest/api/playfab/admin/account-management/deletemembershipsubscription + */ + DeleteMembershipSubscription(request: PlayFabAdminModels.DeleteMembershipSubscriptionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes a relationship between a title and an OpenID Connect provider. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/deleteopenidconnection */ - DeleteOpenIdConnection(request: PlayFabAdminModels.DeleteOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteOpenIdConnection(request: PlayFabAdminModels.DeleteOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes a user's player account from a title and deletes all associated data * https://docs.microsoft.com/rest/api/playfab/admin/account-management/deleteplayer */ - DeletePlayer(request: PlayFabAdminModels.DeletePlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeletePlayer(request: PlayFabAdminModels.DeletePlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes title-specific custom properties for a player + * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/deleteplayercustomproperties + */ + DeletePlayerCustomProperties(request: PlayFabAdminModels.DeletePlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes an existing Player Shared Secret Key. It may take up to 5 minutes for this delete to be reflected after this API * returns. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/deleteplayersharedsecret */ - DeletePlayerSharedSecret(request: PlayFabAdminModels.DeletePlayerSharedSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeletePlayerSharedSecret(request: PlayFabAdminModels.DeletePlayerSharedSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes an existing player segment and its associated action(s) for a title. * https://docs.microsoft.com/rest/api/playfab/admin/segments/deletesegment */ - DeleteSegment(request: PlayFabAdminModels.DeleteSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteSegment(request: PlayFabAdminModels.DeleteSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Deletes an existing virtual item store + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Deletes an existing virtual item store * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/deletestore */ - DeleteStore(request: PlayFabAdminModels.DeleteStoreRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteStore(request: PlayFabAdminModels.DeleteStoreRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Delete a task. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/deletetask */ - DeleteTask(request: PlayFabAdminModels.DeleteTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteTask(request: PlayFabAdminModels.DeleteTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Permanently deletes a title and all associated configuration * https://docs.microsoft.com/rest/api/playfab/admin/account-management/deletetitle */ - DeleteTitle(request: PlayFabAdminModels.DeleteTitleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteTitle(request: PlayFabAdminModels.DeleteTitleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a specified set of title data overrides. * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/deletetitledataoverride */ - DeleteTitleDataOverride(request: PlayFabAdminModels.DeleteTitleDataOverrideRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteTitleDataOverride(request: PlayFabAdminModels.DeleteTitleDataOverrideRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Exports all associated data of a master player account * https://docs.microsoft.com/rest/api/playfab/admin/account-management/exportmasterplayerdata */ - ExportMasterPlayerData(request: PlayFabAdminModels.ExportMasterPlayerDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ExportMasterPlayerData(request: PlayFabAdminModels.ExportMasterPlayerDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Starts an export for the player profiles in a segment. This API creates a snapshot of all the player profiles which + * match the segment definition at the time of the API call. Profiles which change while an export is in progress will not + * be reflected in the results. + * https://docs.microsoft.com/rest/api/playfab/admin/playstream/exportplayersinsegment + */ + ExportPlayersInSegment(request: PlayFabAdminModels.ExportPlayersInSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get information about a ActionsOnPlayersInSegment task instance. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/getactionsonplayersinsegmenttaskinstance */ - GetActionsOnPlayersInSegmentTaskInstance(request: PlayFabAdminModels.GetTaskInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetActionsOnPlayersInSegmentTaskInstance(request: PlayFabAdminModels.GetTaskInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves an array of player segment definitions. Results from this can be used in subsequent API calls such as - * GetPlayersInSegment which requires a Segment ID. While segment names can change the ID for that segment will not change. + * ExportPlayersInSegment which requires a Segment ID. While segment names can change the ID for that segment will not + * change. * https://docs.microsoft.com/rest/api/playfab/admin/playstream/getallsegments */ - GetAllSegments(request: PlayFabAdminModels.GetAllSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetAllSegments(request: PlayFabAdminModels.GetAllSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the specified version of the title's catalog of virtual goods, including all defined properties + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the specified version of the title's catalog of virtual goods, including all defined properties * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/getcatalogitems */ - GetCatalogItems(request: PlayFabAdminModels.GetCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCatalogItems(request: PlayFabAdminModels.GetCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the contents and information of a specific Cloud Script revision. * https://docs.microsoft.com/rest/api/playfab/admin/server-side-cloud-script/getcloudscriptrevision */ - GetCloudScriptRevision(request: PlayFabAdminModels.GetCloudScriptRevisionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCloudScriptRevision(request: PlayFabAdminModels.GetCloudScriptRevisionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get detail information about a CloudScript task instance. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/getcloudscripttaskinstance */ - GetCloudScriptTaskInstance(request: PlayFabAdminModels.GetTaskInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCloudScriptTaskInstance(request: PlayFabAdminModels.GetTaskInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all the current cloud script versions. For each version, information about the current published and latest * revisions is also listed. * https://docs.microsoft.com/rest/api/playfab/admin/server-side-cloud-script/getcloudscriptversions */ - GetCloudScriptVersions(request: PlayFabAdminModels.GetCloudScriptVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCloudScriptVersions(request: PlayFabAdminModels.GetCloudScriptVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * List all contents of the title and get statistics such as size * https://docs.microsoft.com/rest/api/playfab/admin/content/getcontentlist */ - GetContentList(request: PlayFabAdminModels.GetContentListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetContentList(request: PlayFabAdminModels.GetContentListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the pre-signed URL for uploading a content file. A subsequent HTTP PUT to the returned URL uploads the * content. Also, please be aware that the Content service is specifically PlayFab's CDN offering, for which standard CDN * rates apply. * https://docs.microsoft.com/rest/api/playfab/admin/content/getcontentuploadurl */ - GetContentUploadUrl(request: PlayFabAdminModels.GetContentUploadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetContentUploadUrl(request: PlayFabAdminModels.GetContentUploadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a download URL for the requested report * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getdatareport */ - GetDataReport(request: PlayFabAdminModels.GetDataReportRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Retrieves the details for a specific completed session, including links to standard out and standard error logs - * https://docs.microsoft.com/rest/api/playfab/admin/matchmaking/getmatchmakergameinfo - */ - GetMatchmakerGameInfo(request: PlayFabAdminModels.GetMatchmakerGameInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Retrieves the details of defined game modes for the specified game server executable - * https://docs.microsoft.com/rest/api/playfab/admin/matchmaking/getmatchmakergamemodes - */ - GetMatchmakerGameModes(request: PlayFabAdminModels.GetMatchmakerGameModesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetDataReport(request: PlayFabAdminModels.GetDataReportRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get the list of titles that the player has played * https://docs.microsoft.com/rest/api/playfab/admin/account-management/getplayedtitlelist */ - GetPlayedTitleList(request: PlayFabAdminModels.GetPlayedTitleListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayedTitleList(request: PlayFabAdminModels.GetPlayedTitleListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves a title-specific custom property value for a player. + * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getplayercustomproperty + */ + GetPlayerCustomProperty(request: PlayFabAdminModels.GetPlayerCustomPropertyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets a player's ID from an auth token. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/getplayeridfromauthtoken */ - GetPlayerIdFromAuthToken(request: PlayFabAdminModels.GetPlayerIdFromAuthTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerIdFromAuthToken(request: PlayFabAdminModels.GetPlayerIdFromAuthTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the player's profile * https://docs.microsoft.com/rest/api/playfab/admin/account-management/getplayerprofile */ - GetPlayerProfile(request: PlayFabAdminModels.GetPlayerProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerProfile(request: PlayFabAdminModels.GetPlayerProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * List all segments that a player currently belongs to at this moment in time. * https://docs.microsoft.com/rest/api/playfab/admin/playstream/getplayersegments */ - GetPlayerSegments(request: PlayFabAdminModels.GetPlayersSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerSegments(request: PlayFabAdminModels.GetPlayersSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Returns all Player Shared Secret Keys including disabled and expired. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/getplayersharedsecrets */ - GetPlayerSharedSecrets(request: PlayFabAdminModels.GetPlayerSharedSecretsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Allows for paging through all players in a given segment. This API creates a snapshot of all player profiles that match - * the segment definition at the time of its creation and lives through the Total Seconds to Live, refreshing its life span - * on each subsequent use of the Continuation Token. Profiles that change during the course of paging will not be reflected - * in the results. AB Test segments are currently not supported by this operation. NOTE: This API is limited to being - * called 30 times in one minute. You will be returned an error if you exceed this threshold. - * https://docs.microsoft.com/rest/api/playfab/admin/playstream/getplayersinsegment - */ - GetPlayersInSegment(request: PlayFabAdminModels.GetPlayersInSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerSharedSecrets(request: PlayFabAdminModels.GetPlayerSharedSecretsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the configuration information for all player statistics defined in the title, regardless of whether they have * a reset interval. * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getplayerstatisticdefinitions */ - GetPlayerStatisticDefinitions(request: PlayFabAdminModels.GetPlayerStatisticDefinitionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerStatisticDefinitions(request: PlayFabAdminModels.GetPlayerStatisticDefinitionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the information on the available versions of the specified statistic. * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getplayerstatisticversions */ - GetPlayerStatisticVersions(request: PlayFabAdminModels.GetPlayerStatisticVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerStatisticVersions(request: PlayFabAdminModels.GetPlayerStatisticVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get all tags with a given Namespace (optional) from a player profile. * https://docs.microsoft.com/rest/api/playfab/admin/playstream/getplayertags */ - GetPlayerTags(request: PlayFabAdminModels.GetPlayerTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerTags(request: PlayFabAdminModels.GetPlayerTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the requested policy. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/getpolicy */ - GetPolicy(request: PlayFabAdminModels.GetPolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPolicy(request: PlayFabAdminModels.GetPolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom publisher settings * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/getpublisherdata */ - GetPublisherData(request: PlayFabAdminModels.GetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPublisherData(request: PlayFabAdminModels.GetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the random drop table configuration for the title + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the random drop table configuration for the title * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/getrandomresulttables */ - GetRandomResultTables(request: PlayFabAdminModels.GetRandomResultTablesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetRandomResultTables(request: PlayFabAdminModels.GetRandomResultTablesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Get detail information of a segment and its associated definition(s) and action(s) for a title. - * https://docs.microsoft.com/rest/api/playfab/admin/segments/getsegments + * Retrieves the result of an export started by ExportPlayersInSegment API. If the ExportPlayersInSegment is successful and + * complete, this API returns the IndexUrl from which the index file can be downloaded. The index file has a list of urls + * from which the files containing the player profile data can be downloaded. Otherwise, it returns the current 'State' of + * the export + * https://docs.microsoft.com/rest/api/playfab/admin/playstream/getsegmentexport */ - GetSegments(request: PlayFabAdminModels.GetSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetSegmentExport(request: PlayFabAdminModels.GetPlayersInSegmentExportRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the build details for the specified game server executable - * https://docs.microsoft.com/rest/api/playfab/admin/custom-server-management/getserverbuildinfo + * Returns the total number of players in a given segment. + * https://docs.microsoft.com/rest/api/playfab/admin/playstream/getsegmentplayercount */ - GetServerBuildInfo(request: PlayFabAdminModels.GetServerBuildInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetSegmentPlayerCount(request: PlayFabAdminModels.GetSegmentPlayerCountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the pre-authorized URL for uploading a game server package containing a build (does not enable the build for - * use - see AddServerBuild) - * https://docs.microsoft.com/rest/api/playfab/admin/custom-server-management/getserverbuilduploadurl + * Get detail information of a segment and its associated definition(s) and action(s) for a title. + * https://docs.microsoft.com/rest/api/playfab/admin/segments/getsegments */ - GetServerBuildUploadUrl(request: PlayFabAdminModels.GetServerBuildUploadURLRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetSegments(request: PlayFabAdminModels.GetSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the set of items defined for the specified store, including all prices defined + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the set of items defined for the specified store, including all prices defined * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/getstoreitems */ - GetStoreItems(request: PlayFabAdminModels.GetStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetStoreItems(request: PlayFabAdminModels.GetStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Query for task instances by task, status, or time range. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/gettaskinstances */ - GetTaskInstances(request: PlayFabAdminModels.GetTaskInstancesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTaskInstances(request: PlayFabAdminModels.GetTaskInstancesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get definition information on a specified task or all tasks within a title. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/gettasks */ - GetTasks(request: PlayFabAdminModels.GetTasksRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTasks(request: PlayFabAdminModels.GetTasksRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom title settings which can be read by the client * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/gettitledata */ - GetTitleData(request: PlayFabAdminModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleData(request: PlayFabAdminModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom title settings which cannot be read by the client * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/gettitleinternaldata */ - GetTitleInternalData(request: PlayFabAdminModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleInternalData(request: PlayFabAdminModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the relevant details for a specified user, based upon a match against a supplied unique identifier * https://docs.microsoft.com/rest/api/playfab/admin/account-management/getuseraccountinfo */ - GetUserAccountInfo(request: PlayFabAdminModels.LookupUserAccountInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserAccountInfo(request: PlayFabAdminModels.LookupUserAccountInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets all bans for a user. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/getuserbans */ - GetUserBans(request: PlayFabAdminModels.GetUserBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserBans(request: PlayFabAdminModels.GetUserBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getuserdata */ - GetUserData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getuserinternaldata */ - GetUserInternalData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserInternalData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the specified user's current inventory of virtual goods + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the specified user's current inventory of virtual goods * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/getuserinventory */ - GetUserInventory(request: PlayFabAdminModels.GetUserInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserInventory(request: PlayFabAdminModels.GetUserInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getuserpublisherdata */ - GetUserPublisherData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getuserpublisherinternaldata */ - GetUserPublisherInternalData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherInternalData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getuserpublisherreadonlydata */ - GetUserPublisherReadOnlyData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherReadOnlyData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getuserreadonlydata */ - GetUserReadOnlyData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserReadOnlyData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds the specified items to the specified user inventories + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Adds the specified items to the specified user inventories * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/grantitemstousers */ - GrantItemsToUsers(request: PlayFabAdminModels.GrantItemsToUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GrantItemsToUsers(request: PlayFabAdminModels.GrantItemsToUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Increases the global count for the given scarce resource. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Increases the global count for the given scarce resource. * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/incrementlimitededitionitemavailability */ - IncrementLimitedEditionItemAvailability(request: PlayFabAdminModels.IncrementLimitedEditionItemAvailabilityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + IncrementLimitedEditionItemAvailability(request: PlayFabAdminModels.IncrementLimitedEditionItemAvailabilityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Resets the indicated statistic, removing all player entries for it and backing up the old values. * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/incrementplayerstatisticversion */ - IncrementPlayerStatisticVersion(request: PlayFabAdminModels.IncrementPlayerStatisticVersionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + IncrementPlayerStatisticVersion(request: PlayFabAdminModels.IncrementPlayerStatisticVersionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of all Open ID Connect providers registered to a title. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/listopenidconnection */ - ListOpenIdConnection(request: PlayFabAdminModels.ListOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListOpenIdConnection(request: PlayFabAdminModels.ListOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the build details for all game server executables which are currently defined for the title - * https://docs.microsoft.com/rest/api/playfab/admin/custom-server-management/listserverbuilds + * Retrieves title-specific custom property values for a player. + * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/listplayercustomproperties */ - ListServerBuilds(request: PlayFabAdminModels.ListBuildsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListPlayerCustomProperties(request: PlayFabAdminModels.ListPlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retuns the list of all defined virtual currencies for the title + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retuns the list of all defined virtual currencies for the title * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/listvirtualcurrencytypes */ - ListVirtualCurrencyTypes(request: PlayFabAdminModels.ListVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListVirtualCurrencyTypes(request: PlayFabAdminModels.ListVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Updates the game server mode details for the specified game server executable - * https://docs.microsoft.com/rest/api/playfab/admin/matchmaking/modifymatchmakergamemodes - */ - ModifyMatchmakerGameModes(request: PlayFabAdminModels.ModifyMatchmakerGameModesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Updates the build details for the specified game server executable - * https://docs.microsoft.com/rest/api/playfab/admin/custom-server-management/modifyserverbuild - */ - ModifyServerBuild(request: PlayFabAdminModels.ModifyServerBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Attempts to process an order refund through the original real money payment provider. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Attempts to process an order refund through the original real money payment provider. * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/refundpurchase */ - RefundPurchase(request: PlayFabAdminModels.RefundPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RefundPurchase(request: PlayFabAdminModels.RefundPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Remove a given tag from a player profile. The tag's namespace is automatically generated based on the source of the tag. * https://docs.microsoft.com/rest/api/playfab/admin/playstream/removeplayertag */ - RemovePlayerTag(request: PlayFabAdminModels.RemovePlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemovePlayerTag(request: PlayFabAdminModels.RemovePlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Removes the game server executable specified from the set of those a client is permitted to request in a call to - * StartGame - * https://docs.microsoft.com/rest/api/playfab/admin/custom-server-management/removeserverbuild - */ - RemoveServerBuild(request: PlayFabAdminModels.RemoveServerBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Removes one or more virtual currencies from the set defined for the title. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Removes one or more virtual currencies from the set defined for the title. * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/removevirtualcurrencytypes */ - RemoveVirtualCurrencyTypes(request: PlayFabAdminModels.RemoveVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveVirtualCurrencyTypes(request: PlayFabAdminModels.RemoveVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Completely removes all statistics for the specified character, for the current game * https://docs.microsoft.com/rest/api/playfab/admin/characters/resetcharacterstatistics */ - ResetCharacterStatistics(request: PlayFabAdminModels.ResetCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ResetCharacterStatistics(request: PlayFabAdminModels.ResetCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Reset a player's password for a given title. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/resetpassword */ - ResetPassword(request: PlayFabAdminModels.ResetPasswordRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ResetPassword(request: PlayFabAdminModels.ResetPasswordRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Completely removes all statistics for the specified user, for the current game * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/resetuserstatistics */ - ResetUserStatistics(request: PlayFabAdminModels.ResetUserStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ResetUserStatistics(request: PlayFabAdminModels.ResetUserStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Attempts to resolve a dispute with the original order's payment provider. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Attempts to resolve a dispute with the original order's payment provider. * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/resolvepurchasedispute */ - ResolvePurchaseDispute(request: PlayFabAdminModels.ResolvePurchaseDisputeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ResolvePurchaseDispute(request: PlayFabAdminModels.ResolvePurchaseDisputeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Revoke all active bans for a user. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/revokeallbansforuser */ - RevokeAllBansForUser(request: PlayFabAdminModels.RevokeAllBansForUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeAllBansForUser(request: PlayFabAdminModels.RevokeAllBansForUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Revoke all active bans specified with BanId. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/revokebans */ - RevokeBans(request: PlayFabAdminModels.RevokeBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeBans(request: PlayFabAdminModels.RevokeBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Revokes access to an item in a user's inventory + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Revokes access to an item in a user's inventory * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/revokeinventoryitem */ - RevokeInventoryItem(request: PlayFabAdminModels.RevokeInventoryItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeInventoryItem(request: PlayFabAdminModels.RevokeInventoryItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Revokes access for up to 25 items across multiple users and characters. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Revokes access for up to 25 items across multiple users and characters. * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/revokeinventoryitems */ - RevokeInventoryItems(request: PlayFabAdminModels.RevokeInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeInventoryItems(request: PlayFabAdminModels.RevokeInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Run a task immediately regardless of its schedule. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/runtask */ - RunTask(request: PlayFabAdminModels.RunTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RunTask(request: PlayFabAdminModels.RunTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Forces an email to be sent to the registered email address for the user's account, with a link allowing the user to * change the password.If an account recovery email template ID is provided, an email using the custom email template will * be used. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/sendaccountrecoveryemail */ - SendAccountRecoveryEmail(request: PlayFabAdminModels.SendAccountRecoveryEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SendAccountRecoveryEmail(request: PlayFabAdminModels.SendAccountRecoveryEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Creates the catalog configuration of all virtual goods for the specified catalog version + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Creates the catalog configuration of all virtual goods for the specified catalog version * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/setcatalogitems */ - SetCatalogItems(request: PlayFabAdminModels.UpdateCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetCatalogItems(request: PlayFabAdminModels.UpdateCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Sets the override expiration for a membership subscription + * https://docs.microsoft.com/rest/api/playfab/admin/account-management/setmembershipoverride + */ + SetMembershipOverride(request: PlayFabAdminModels.SetMembershipOverrideRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets or resets the player's secret. Player secrets are used to sign API requests. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/setplayersecret */ - SetPlayerSecret(request: PlayFabAdminModels.SetPlayerSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetPlayerSecret(request: PlayFabAdminModels.SetPlayerSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the currently published revision of a title Cloud Script * https://docs.microsoft.com/rest/api/playfab/admin/server-side-cloud-script/setpublishedrevision */ - SetPublishedRevision(request: PlayFabAdminModels.SetPublishedRevisionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetPublishedRevision(request: PlayFabAdminModels.SetPublishedRevisionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the key-value store of custom publisher settings * https://docs.microsoft.com/rest/api/playfab/admin/shared-group-data/setpublisherdata */ - SetPublisherData(request: PlayFabAdminModels.SetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetPublisherData(request: PlayFabAdminModels.SetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Sets all the items in one virtual store + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Sets all the items in one virtual store * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/setstoreitems */ - SetStoreItems(request: PlayFabAdminModels.UpdateStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetStoreItems(request: PlayFabAdminModels.UpdateStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Creates and updates the key-value store of custom title settings which can be read by the client + * Creates and updates the key-value store of custom title settings which can be read by the client. For example, a + * developer could choose to store values which modify the user experience, such as enemy spawn rates, weapon strengths, + * movement speeds, etc. This allows a developer to update the title without the need to create, test, and ship a new + * build. * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/settitledata */ - SetTitleData(request: PlayFabAdminModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetTitleData(request: PlayFabAdminModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Set and delete key-value pairs in a title data override instance. * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/settitledataandoverrides */ - SetTitleDataAndOverrides(request: PlayFabAdminModels.SetTitleDataAndOverridesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetTitleDataAndOverrides(request: PlayFabAdminModels.SetTitleDataAndOverridesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Updates the key-value store of custom title settings which cannot be read by the client + * Updates the key-value store of custom title settings which cannot be read by the client. These values can be used to + * tweak settings used by game servers and Cloud Scripts without the need to update and re-deploy. * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/settitleinternaldata */ - SetTitleInternalData(request: PlayFabAdminModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetTitleInternalData(request: PlayFabAdminModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the Amazon Resource Name (ARN) for iOS and Android push notifications. Documentation on the exact restrictions can * be found at: http://docs.aws.amazon.com/sns/latest/api/API_CreatePlatformApplication.html. Currently, Amazon device * Messaging is not supported. * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/setuppushnotification */ - SetupPushNotification(request: PlayFabAdminModels.SetupPushNotificationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetupPushNotification(request: PlayFabAdminModels.SetupPushNotificationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Decrements the specified virtual currency by the stated amount + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Decrements the specified virtual currency by the stated amount * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/subtractuservirtualcurrency */ - SubtractUserVirtualCurrency(request: PlayFabAdminModels.SubtractUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SubtractUserVirtualCurrency(request: PlayFabAdminModels.SubtractUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates information of a list of existing bans specified with Ban Ids. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/updatebans */ - UpdateBans(request: PlayFabAdminModels.UpdateBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateBans(request: PlayFabAdminModels.UpdateBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Updates the catalog configuration for virtual goods in the specified catalog version + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Updates the catalog configuration for virtual goods in the specified catalog version * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/updatecatalogitems */ - UpdateCatalogItems(request: PlayFabAdminModels.UpdateCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCatalogItems(request: PlayFabAdminModels.UpdateCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a new Cloud Script revision and uploads source code to it. Note that at this time, only one file should be * submitted in the revision. * https://docs.microsoft.com/rest/api/playfab/admin/server-side-cloud-script/updatecloudscript */ - UpdateCloudScript(request: PlayFabAdminModels.UpdateCloudScriptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCloudScript(request: PlayFabAdminModels.UpdateCloudScriptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Modifies data and credentials for an existing relationship between a title and an Open ID Connect provider * https://docs.microsoft.com/rest/api/playfab/admin/authentication/updateopenidconnection */ - UpdateOpenIdConnection(request: PlayFabAdminModels.UpdateOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateOpenIdConnection(request: PlayFabAdminModels.UpdateOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Updates the title-specific custom property values for a player + * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateplayercustomproperties + */ + UpdatePlayerCustomProperties(request: PlayFabAdminModels.UpdatePlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates a existing Player Shared Secret Key. It may take up to 5 minutes for this update to become generally available * after this API returns. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/updateplayersharedsecret */ - UpdatePlayerSharedSecret(request: PlayFabAdminModels.UpdatePlayerSharedSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdatePlayerSharedSecret(request: PlayFabAdminModels.UpdatePlayerSharedSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates a player statistic configuration for the title, optionally allowing the developer to specify a reset interval. * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateplayerstatisticdefinition */ - UpdatePlayerStatisticDefinition(request: PlayFabAdminModels.UpdatePlayerStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdatePlayerStatisticDefinition(request: PlayFabAdminModels.UpdatePlayerStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Changes a policy for a title * https://docs.microsoft.com/rest/api/playfab/admin/authentication/updatepolicy */ - UpdatePolicy(request: PlayFabAdminModels.UpdatePolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdatePolicy(request: PlayFabAdminModels.UpdatePolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Updates the random drop table configuration for the title + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Updates the random drop table configuration for the title * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/updaterandomresulttables */ - UpdateRandomResultTables(request: PlayFabAdminModels.UpdateRandomResultTablesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateRandomResultTables(request: PlayFabAdminModels.UpdateRandomResultTablesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates an existing player segment and its associated definition(s) and action(s) for a title. * https://docs.microsoft.com/rest/api/playfab/admin/segments/updatesegment */ - UpdateSegment(request: PlayFabAdminModels.UpdateSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateSegment(request: PlayFabAdminModels.UpdateSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Updates an existing virtual item store with new or modified items + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Updates an existing virtual item store with new or modified items * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/updatestoreitems */ - UpdateStoreItems(request: PlayFabAdminModels.UpdateStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateStoreItems(request: PlayFabAdminModels.UpdateStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Update an existing task. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/updatetask */ - UpdateTask(request: PlayFabAdminModels.UpdateTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateTask(request: PlayFabAdminModels.UpdateTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateuserdata */ - UpdateUserData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateuserinternaldata */ - UpdateUserInternalData(request: PlayFabAdminModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserInternalData(request: PlayFabAdminModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the publisher-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateuserpublisherdata */ - UpdateUserPublisherData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserPublisherData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the publisher-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateuserpublisherinternaldata */ - UpdateUserPublisherInternalData(request: PlayFabAdminModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserPublisherInternalData(request: PlayFabAdminModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the publisher-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateuserpublisherreadonlydata */ - UpdateUserPublisherReadOnlyData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserPublisherReadOnlyData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateuserreadonlydata */ - UpdateUserReadOnlyData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserReadOnlyData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title specific display name for a user * https://docs.microsoft.com/rest/api/playfab/admin/account-management/updateusertitledisplayname */ - UpdateUserTitleDisplayName(request: PlayFabAdminModels.UpdateUserTitleDisplayNameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserTitleDisplayName(request: PlayFabAdminModels.UpdateUserTitleDisplayNameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Validates the result of a policy update without persisting it. + * https://docs.microsoft.com/rest/api/playfab/admin/authentication/validateapipolicy + */ + ValidateApiPolicy(request: PlayFabAdminModels.ValidateApiPolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } @@ -625,9 +655,37 @@ declare module PlayFabAdminModels { } + export interface Action { + /** Action content to add inventory item v2 */ + AddInventoryItemV2Content?: AddInventoryItemV2Content; + /** Action content to ban player */ + BanPlayerContent?: BanPlayerContent; + /** Action content to delete inventory item v2 */ + DeleteInventoryItemV2Content?: DeleteInventoryItemV2Content; + /** Action content to delete player */ + DeletePlayerContent?: DeletePlayerContent; + /** Action content to execute cloud script */ + ExecuteCloudScriptContent?: ExecuteCloudScriptContent; + /** Action content to execute azure function */ + ExecuteFunctionContent?: ExecuteFunctionContent; + /** Action content to grant item */ + GrantItemContent?: GrantItemContent; + /** Action content to grant virtual currency */ + GrantVirtualCurrencyContent?: GrantVirtualCurrencyContent; + /** Action content to increment player statistic */ + IncrementPlayerStatisticContent?: IncrementPlayerStatisticContent; + /** Action content to send push notification */ + PushNotificationContent?: PushNotificationContent; + /** Action content to send email */ + SendEmailContent?: SendEmailContent; + /** Action content to subtract inventory item v2 */ + SubtractInventoryItemV2Content?: SubtractInventoryItemV2Content; + + } + export interface ActionsOnPlayersInSegmentTaskParameter { - /** ID of the action to perform on each player in segment. */ - ActionId: string; + /** List of actions to perform on each player in a segment. Each action object can contain only one action type. */ + Actions?: Action[]; /** ID of the segment to perform actions on. */ SegmentId: string; @@ -661,16 +719,6 @@ declare module PlayFabAdminModels { } - export interface AdCampaignAttribution { - /** UTC time stamp of attribution */ - AttributedAt: string; - /** Attribution campaign identifier */ - CampaignId?: string; - /** Attribution network name */ - Platform?: string; - - } - export interface AdCampaignAttributionModel { /** UTC time stamp of attribution */ AttributedAt: string; @@ -691,6 +739,34 @@ declare module PlayFabAdminModels { } + export interface AddInventoryItemsV2SegmentAction { + /** Amount of the item to be granted to a player */ + Amount?: number; + /** The collection id for where the item will be granted in the player inventory */ + CollectionId?: string; + /** The duration in seconds of the subscription to be granted to a player */ + DurationInSeconds?: number; + /** The id of item to be granted to the player */ + ItemId?: string; + /** The stack id for where the item will be granted in the player inventory */ + StackId?: string; + + } + + export interface AddInventoryItemV2Content { + /** Amount of the item to be granted to a player */ + Amount?: number; + /** The collection id for where the item will be granted in the player inventory */ + CollectionId?: string; + /** The duration in seconds of the subscription to be granted to a player */ + DurationInSeconds?: number; + /** The id of item to be granted to the player */ + ItemId?: string; + /** The stack id for where the item will be granted in the player inventory */ + StackId?: string; + + } + export interface AddLocalizedNewsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Localized body text of the news. */ Body: string; @@ -714,6 +790,8 @@ declare module PlayFabAdminModels { Body: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; + /** Optional status for the new news item. If not set, defaults to Published. */ + Status?: string; /** Time this news was published. If not set, defaults to now. */ Timestamp?: string; /** Default title (headline) of the news item. */ @@ -741,59 +819,6 @@ declare module PlayFabAdminModels { } - export interface AddServerBuildRequest extends PlayFabModule.IPlayFabRequestCommon { - /** server host regions in which this build should be running and available */ - ActiveRegions?: string[]; - /** unique identifier for the build executable */ - BuildId: string; - /** appended to the end of the command line when starting game servers */ - CommandLineTemplate?: string; - /** developer comment(s) for this build */ - Comment?: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** path to the game server executable. Defaults to gameserver.exe */ - ExecutablePath?: string; - /** maximum number of game server instances that can run on a single host machine */ - MaxGamesPerHost: number; - /** - * minimum capacity of additional game server instances that can be started before the autoscaling service starts new host - * machines (given the number of current running host machines and game server instances) - */ - MinFreeGameSlots: number; - - } - - export interface AddServerBuildResult extends PlayFabModule.IPlayFabResultCommon { - /** array of regions where this build can used, when it is active */ - ActiveRegions?: string[]; - /** unique identifier for this build executable */ - BuildId?: string; - /** appended to the end of the command line when starting game servers */ - CommandLineTemplate?: string; - /** developer comment(s) for this build */ - Comment?: string; - /** path to the game server executable. Defaults to gameserver.exe */ - ExecutablePath?: string; - /** maximum number of game server instances that can run on a single host machine */ - MaxGamesPerHost: number; - /** - * minimum capacity of additional game server instances that can be started before the autoscaling service starts new host - * machines (given the number of current running host machines and game server instances) - */ - MinFreeGameSlots: number; - /** the current status of the build validation and processing steps */ - Status?: string; - /** time this build was last modified (or uploaded, if this build has never been modified) */ - Timestamp: string; - /** - * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a - * title has been selected. - */ - TitleId?: string; - - } - export interface AddUserVirtualCurrencyRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Amount to be added to the user balance of the specified virtual currency. Maximum VC balance is Int32 (2,147,483,647). @@ -830,6 +855,7 @@ declare module PlayFabAdminModels { type AuthTokenType = "Email" + export interface BanInfo { /** The active state of this ban. Expired bans may still have this value set to true but they will have no effect. */ Active: boolean; @@ -841,12 +867,20 @@ declare module PlayFabAdminModels { Expires?: string; /** The IP address on which the ban was applied. May affect multiple players. */ IPAddress?: string; - /** The MAC address on which the ban was applied. May affect multiple players. */ - MACAddress?: string; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId?: string; /** The reason why this ban was applied. */ Reason?: string; + /** The family type of the user that is included in the ban. */ + UserFamilyType?: string; + + } + + export interface BanPlayerContent { + /** Duration(in hours) to ban a player. If not provided, the player will be banned permanently. */ + BanDurationHours?: number; + /** Reason to ban a player */ + BanReason?: string; } @@ -863,12 +897,12 @@ declare module PlayFabAdminModels { DurationInHours?: number; /** IP address to be banned. May affect multiple players. */ IPAddress?: string; - /** MAC address to be banned. May affect multiple players. */ - MACAddress?: string; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; /** The reason for this ban. Maximum 140 characters. */ Reason?: string; + /** The family type of the user that should be included in the ban if applicable. May affect multiple players. */ + UserFamilyType?: string; } @@ -1010,6 +1044,20 @@ declare module PlayFabAdminModels { } + export interface ChurnPredictionSegmentFilter { + /** Comparison */ + Comparison?: string; + /** RiskLevel */ + RiskLevel?: string; + + } + + type ChurnRiskLevel = "NoData" + + | "LowRisk" + | "MediumRisk" + | "HighRisk"; + export interface CloudScriptFile { /** Contents of the Cloud Script javascript. Must be string-escaped javascript. */ FileContents: string; @@ -1062,19 +1110,10 @@ declare module PlayFabAdminModels { } type Conditionals = "Any" + | "True" | "False"; - export interface ContactEmailInfo { - /** The email address */ - EmailAddress?: string; - /** The name of the email info data */ - Name?: string; - /** The verification status of the email */ - VerificationStatus?: string; - - } - export interface ContactEmailInfoModel { /** The email address */ EmailAddress?: string; @@ -1096,14 +1135,17 @@ declare module PlayFabAdminModels { } type ContinentCode = "AF" + | "AN" | "AS" | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" + | "AX" | "AL" | "DZ" @@ -1351,7 +1393,8 @@ declare module PlayFabAdminModels { | "EH" | "YE" | "ZM" - | "ZW"; + | "ZW" + | "Unknown"; export interface CreateActionsOnPlayerSegmentTaskRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ @@ -1419,6 +1462,8 @@ declare module PlayFabAdminModels { IssuerDiscoveryUrl?: string; /** Manually specified information for an OpenID Connect issuer. */ IssuerInformation?: OpenIdIssuerInformation; + /** Override the issuer name for user indexing and lookup. */ + IssuerOverride?: string; } @@ -1473,6 +1518,7 @@ declare module PlayFabAdminModels { } type Currency = "AED" + | "AFN" | "ALL" | "AMD" @@ -1635,12 +1681,88 @@ declare module PlayFabAdminModels { | "ZMW" | "ZWD"; + export interface CustomPropertyBooleanSegmentFilter { + /** Custom property comparison. */ + Comparison?: string; + /** Custom property name. */ + PropertyName?: string; + /** Custom property boolean value. */ + PropertyValue: boolean; + + } + + export interface CustomPropertyDateTimeSegmentFilter { + /** Custom property comparison. */ + Comparison?: string; + /** Custom property name. */ + PropertyName?: string; + /** Custom property datetime value. */ + PropertyValue: string; + + } + + export interface CustomPropertyDetails { + /** The custom property's name. */ + Name?: string; + /** The custom property's value. */ + Value?: any; + + } + + export interface CustomPropertyNumericSegmentFilter { + /** Custom property comparison. */ + Comparison?: string; + /** Custom property name. */ + PropertyName?: string; + /** Custom property numeric value. */ + PropertyValue: number; + + } + + export interface CustomPropertyStringSegmentFilter { + /** Custom property comparison. */ + Comparison?: string; + /** Custom property name. */ + PropertyName?: string; + /** Custom property string value. */ + PropertyValue?: string; + + } + export interface DeleteContentRequest extends PlayFabModule.IPlayFabRequestCommon { /** Key of the content item to be deleted */ Key: string; } + export interface DeletedPropertyDetails { + /** The name of the property which was requested to be deleted. */ + Name?: string; + /** Indicates whether or not the property was deleted. If false, no property with that name existed. */ + WasDeleted: boolean; + + } + + export interface DeleteInventoryItemsV2SegmentAction { + /** The collection id for where the item will be removed from the player inventory */ + CollectionId?: string; + /** The id of item to be removed from the player */ + ItemId?: string; + /** The stack id for where the item will be removed from the player inventory */ + StackId?: string; + + } + + export interface DeleteInventoryItemV2Content { + /** The collection id for where the item will be removed from the player inventory */ + CollectionId?: string; + /** The id of item to be removed from the player */ + ItemId?: string; + /** The stack id for where the item will be removed from the player inventory */ + StackId?: string; + + } + export interface DeleteMasterPlayerAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** Developer created string to identify a user without PlayFab ID */ MetaData?: string; @@ -1660,12 +1782,70 @@ declare module PlayFabAdminModels { } + export interface DeleteMasterPlayerEventDataRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface DeleteMasterPlayerEventDataResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteMembershipSubscriptionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Id of the membership to apply the override expiration date to. */ + MembershipId: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** Id of the subscription that should be deleted from the membership. */ + SubscriptionId: string; + + } + + export interface DeleteMembershipSubscriptionResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface DeleteOpenIdConnectionRequest extends PlayFabModule.IPlayFabRequestCommon { /** unique name of the connection */ ConnectionId: string; } + export interface DeletePlayerContent { + + } + + export interface DeletePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Optional field used for concurrency control. One can ensure that the delete operation will only be performed if the + * player's properties have not been updated by any other clients since the last version. + */ + ExpectedPropertiesVersion?: number; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** A list of property names denoting which properties should be deleted. */ + PropertyNames: string[]; + + } + + export interface DeletePlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** The list of properties requested to be deleted. */ + DeletedProperties?: DeletedPropertyDetails[]; + /** PlayFab unique identifier of the user whose properties were deleted. */ + PlayFabId?: string; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + + } + export interface DeletePlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; @@ -1747,6 +1927,7 @@ declare module PlayFabAdminModels { } type EffectType = "Allow" + | "Deny"; export interface EmailNotificationSegmentAction { @@ -1758,6 +1939,7 @@ declare module PlayFabAdminModels { } type EmailVerificationStatus = "Unverified" + | "Pending" | "Confirmed"; @@ -1783,6 +1965,16 @@ declare module PlayFabAdminModels { } + export interface ExecuteCloudScriptContent { + /** Arguments(JSON) to be passed into the cloudscript method */ + CloudScriptMethodArguments: string; + /** Cloudscript method name */ + CloudScriptMethodName: string; + /** Publish cloudscript results as playstream event */ + PublishResultsToPlayStream: boolean; + + } + export interface ExecuteCloudScriptResult { /** Number of PlayFab API requests issued by the CloudScript function */ APIRequestsIssued: number; @@ -1833,6 +2025,16 @@ declare module PlayFabAdminModels { } + export interface ExecuteFunctionContent { + /** Arguments(JSON) to be passed into the cloudscript azure function */ + CloudScriptFunctionArguments: string; + /** Cloudscript azure function name */ + CloudScriptFunctionName: string; + /** Publish results from executing the azure function as playstream event */ + PublishResultsToPlayStream: boolean; + + } + export interface ExportMasterPlayerDataRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; @@ -1848,6 +2050,20 @@ declare module PlayFabAdminModels { } + export interface ExportPlayersInSegmentRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique identifier of the requested segment. */ + SegmentId: string; + + } + + export interface ExportPlayersInSegmentResult extends PlayFabModule.IPlayFabResultCommon { + /** Unique identifier of the export for the requested Segment. */ + ExportId?: string; + /** Unique identifier of the requested Segment. */ + SegmentId?: string; + + } + export interface FirstLoginDateSegmentFilter { /** First player login date comparison. */ Comparison?: string; @@ -1864,25 +2080,8 @@ declare module PlayFabAdminModels { } - type GameBuildStatus = "Available" - | "Validating" - | "InvalidBuildPackage" - | "Processing" - | "FailedToProcess"; - - export interface GameModeInfo { - /** specific game mode type */ - Gamemode: string; - /** maximum user count a specific Game Server Instance can support */ - MaxPlayerCount: number; - /** minimum user count required for this Game Server Instance to continue (usually 1) */ - MinPlayerCount: number; - /** whether to start as an open session, meaning that players can matchmake into it (defaults to true) */ - StartOpen?: boolean; - - } - type GenericErrorCodes = "Success" + | "UnkownError" | "InvalidParams" | "AccountNotFound" @@ -1986,7 +2185,6 @@ declare module PlayFabAdminModels { | "UnableToConnectToDatabase" | "InternalServerError" | "InvalidReportDate" - | "ReportNotAvailable" | "DatabaseThroughputExceeded" | "InvalidGameTicket" | "ExpiredGameTicket" @@ -2362,7 +2560,6 @@ declare module PlayFabAdminModels { | "InsightsManagementGetOperationStatusInvalidParameter" | "DuplicatePurchaseTransactionId" | "EvaluationModePlayerCountExceeded" - | "GetPlayersInSegmentRateLimitExceeded" | "CloudScriptFunctionNameSizeExceeded" | "PaidInsightsFeaturesNotEnabled" | "CloudScriptAzureFunctionsQueueRequestError" @@ -2387,6 +2584,104 @@ declare module PlayFabAdminModels { | "SteamUserNotFound" | "ElasticSearchOperationFailed" | "NotImplemented" + | "PublisherNotFound" + | "PublisherDeleted" + | "ApiDisabledForMigration" + | "ResourceNameUpdateNotAllowed" + | "ApiNotEnabledForTitle" + | "DuplicateTitleNameForPublisher" + | "AzureTitleCreationInProgress" + | "TitleConstraintsPublisherDeletion" + | "InvalidPlayerAccountPoolId" + | "PlayerAccountPoolNotFound" + | "PlayerAccountPoolDeleted" + | "TitleCleanupInProgress" + | "AzureResourceConcurrentOperationInProgress" + | "TitlePublisherUpdateNotAllowed" + | "AzureResourceManagerNotSupportedInStamp" + | "ApiNotIncludedInAzurePlayFabFeatureSet" + | "GoogleServiceAccountFailedAuth" + | "GoogleAPIServiceUnavailable" + | "GoogleAPIServiceUnknownError" + | "NoValidIdentityForAad" + | "PlayerIdentityLinkNotFound" + | "PhotonApplicationIdAlreadyInUse" + | "CloudScriptUnableToDeleteProductionRevision" + | "CustomIdNotFound" + | "AutomationInvalidInput" + | "AutomationInvalidRuleName" + | "AutomationRuleAlreadyExists" + | "AutomationRuleLimitExceeded" + | "InvalidGooglePlayGamesServerAuthCode" + | "PlayStreamConnectionFailed" + | "InvalidEventContents" + | "InsightsV1Deprecated" + | "AnalysisSubscriptionNotFound" + | "AnalysisSubscriptionFailed" + | "AnalysisSubscriptionFoundAlready" + | "AnalysisSubscriptionManagementInvalidInput" + | "InvalidGameCenterId" + | "InvalidNintendoSwitchAccountId" + | "EntityAPIKeysNotSupported" + | "IpAddressBanned" + | "EntityLineageBanned" + | "NamespaceMismatch" + | "InvalidServiceConfiguration" + | "InvalidNamespaceMismatch" + | "LeaderboardColumnLengthMismatch" + | "InvalidStatisticScore" + | "LeaderboardColumnsNotSpecified" + | "LeaderboardMaxSizeTooLarge" + | "InvalidAttributeStatisticsSpecified" + | "LeaderboardNotFound" + | "TokenSigningKeyNotFound" + | "LeaderboardNameConflict" + | "LinkedStatisticColumnMismatch" + | "NoLinkedStatisticToLeaderboard" + | "StatDefinitionAlreadyLinkedToLeaderboard" + | "LinkingStatsNotAllowedForEntityType" + | "LeaderboardCountLimitExceeded" + | "LeaderboardSizeLimitExceeded" + | "LeaderboardDefinitionModificationNotAllowedWhileLinked" + | "StatisticDefinitionModificationNotAllowedWhileLinked" + | "LeaderboardUpdateNotAllowedWhileLinked" + | "CloudScriptAzureFunctionsEventHubRequestError" + | "ExternalEntityNotAllowedForTier" + | "InvalidBaseTimeForInterval" + | "EntityTypeMismatchWithStatDefinition" + | "SpecifiedVersionLeaderboardNotFound" + | "LeaderboardColumnLengthMismatchWithStatDefinition" + | "DuplicateColumnNameFound" + | "LinkedStatisticColumnNotFound" + | "LinkedStatisticColumnRequired" + | "MultipleLinkedStatisticsNotAllowed" + | "DuplicateLinkedStatisticColumnNameFound" + | "AggregationTypeNotAllowedForMultiColumnStatistic" + | "MaxQueryableVersionsValueNotAllowedForTier" + | "StatisticDefinitionHasNullOrEmptyVersionConfiguration" + | "StatisticColumnLengthMismatch" + | "InvalidExternalEntityId" + | "UpdatingStatisticsUsingTransactionIdNotAvailableForFreeTier" + | "TransactionAlreadyApplied" + | "ReportDataNotRetrievedSuccessfully" + | "ResetIntervalCannotBeModified" + | "VersionIncrementRateExceeded" + | "InvalidSteamUsername" + | "InvalidVersionResetForLinkedLeaderboard" + | "BattleNetNotEnabledForTitle" + | "ReportNotProcessed" + | "DataNotAvailable" + | "InvalidReportName" + | "ResourceNotModified" + | "StudioCreationLimitExceeded" + | "StudioDeletionInitiated" + | "ProductDisabledForTitle" + | "PreconditionFailed" + | "CannotEnableAnonymousPlayerCreation" + | "ParentCustomerAccountNotFound" + | "AccountLinkedToABannedPlayer" + | "AzureSubscriptionNotEligibleForLinking" + | "EntityIsNotAMember" | "MatchmakingEntityInvalid" | "MatchmakingPlayerAttributesInvalid" | "MatchmakingQueueNotFound" @@ -2408,6 +2703,11 @@ declare module PlayFabAdminModels { | "MatchmakingQueueLimitExceeded" | "MatchmakingRequestTypeMismatch" | "MatchmakingBadRequest" + | "PubSubFeatureNotEnabledForTitle" + | "PubSubTooManyRequests" + | "PubSubConnectionNotFoundForEntity" + | "PubSubConnectionHandleInvalid" + | "PubSubSubscriptionLimitExceeded" | "TitleConfigNotFound" | "TitleConfigUpdateConflict" | "TitleConfigSerializationError" @@ -2425,6 +2725,8 @@ declare module PlayFabAdminModels { | "CatalogItemTypeInvalid" | "CatalogBadRequest" | "CatalogTooManyRequests" + | "InvalidCatalogItemConfiguration" + | "LegacyEconomyDisabled" | "ExportInvalidStatusUpdate" | "ExportInvalidPrefix" | "ExportBlobContainerDoesNotExist" @@ -2449,6 +2751,7 @@ declare module PlayFabAdminModels { | "ExportCannotParseQuery" | "ExportControlCommandsNotAllowed" | "ExportQueryMissingTableReference" + | "ExportInsightsV1Deprecated" | "ExplorerBasicInvalidQueryName" | "ExplorerBasicInvalidQueryDescription" | "ExplorerBasicInvalidQueryConditions" @@ -2464,10 +2767,13 @@ declare module PlayFabAdminModels { | "ExplorerBasicUpdateQueryError" | "ExplorerBasicSavedQueriesLimit" | "ExplorerBasicSavedQueryNotFound" + | "TenantShardMapperShardNotFound" | "TitleNotEnabledForParty" | "PartyVersionNotFound" | "MultiplayerServerBuildReferencedByMatchmakingQueue" | "MultiplayerServerBuildReferencedByBuildAlias" + | "MultiplayerServerBuildAliasReferencedByMatchmakingQueue" + | "PartySerializationError" | "ExperimentationExperimentStopped" | "ExperimentationExperimentRunning" | "ExperimentationExperimentNotFound" @@ -2491,6 +2797,10 @@ declare module PlayFabAdminModels { | "ExperimentationExclusionGroupCannotDelete" | "ExperimentationExclusionGroupInvalidTrafficAllocation" | "ExperimentationExclusionGroupInvalidName" + | "ExperimentationLegacyExperimentInvalidOperation" + | "ExperimentationExperimentStopFailed" + | "ExperimentationExperimentDeleteFailed" + | "ExperimentationExperimentStartFailed" | "MaxActionDepthExceeded" | "TitleNotOnUpdatedPricingPlan" | "SegmentManagementTitleNotInFlight" @@ -2505,8 +2815,219 @@ declare module PlayFabAdminModels { | "UpdateSegmentRateLimitExceeded" | "GetSegmentsRateLimitExceeded" | "AsyncExportNotInFlight" + | "AsyncExportNotFound" + | "AsyncExportRateLimitExceeded" + | "AnalyticsSegmentCountOverLimit" + | "GetSegmentPlayerCountNotInFlight" + | "GetSegmentPlayerCountRateLimitExceeded" | "SnapshotNotFound" - | "InventoryApiNotImplemented"; + | "InventoryApiNotImplemented" + | "InventoryCollectionDeletionDisallowed" + | "LobbyDoesNotExist" + | "LobbyRateLimitExceeded" + | "LobbyPlayerAlreadyJoined" + | "LobbyNotJoinable" + | "LobbyMemberCannotRejoin" + | "LobbyCurrentPlayersMoreThanMaxPlayers" + | "LobbyPlayerNotPresent" + | "LobbyBadRequest" + | "LobbyPlayerMaxLobbyLimitExceeded" + | "LobbyNewOwnerMustBeConnected" + | "LobbyCurrentOwnerStillConnected" + | "LobbyMemberIsNotOwner" + | "LobbyServerMismatch" + | "LobbyServerNotFound" + | "LobbyDifferentServerAlreadyJoined" + | "LobbyServerAlreadyJoined" + | "LobbyIsNotClientOwned" + | "LobbyDoesNotUseConnections" + | "EventSamplingInvalidRatio" + | "EventSamplingInvalidEventNamespace" + | "EventSamplingInvalidEventName" + | "EventSamplingRatioNotFound" + | "TelemetryKeyNotFound" + | "TelemetryKeyInvalidName" + | "TelemetryKeyAlreadyExists" + | "TelemetryKeyInvalid" + | "TelemetryKeyCountOverLimit" + | "TelemetryKeyDeactivated" + | "TelemetryKeyLongInsightsRetentionNotAllowed" + | "EventSinkConnectionInvalid" + | "EventSinkConnectionUnauthorized" + | "EventSinkRegionInvalid" + | "EventSinkLimitExceeded" + | "EventSinkSasTokenInvalid" + | "EventSinkNotFound" + | "EventSinkNameInvalid" + | "EventSinkSasTokenPermissionInvalid" + | "EventSinkSecretInvalid" + | "EventSinkTenantNotFound" + | "EventSinkAadNotFound" + | "EventSinkDatabaseNotFound" + | "EventSinkTitleUnauthorized" + | "EventSinkInsufficientRoleAssignment" + | "EventSinkContainerNotFound" + | "EventSinkTenantIdInvalid" + | "EventSinkResourceMisconfigured" + | "EventSinkAccessDenied" + | "EventSinkWriteConflict" + | "EventSinkResourceNotFound" + | "EventSinkResourceFeatureNotSupported" + | "EventSinkBucketNameInvalid" + | "EventSinkResourceUnavailable" + | "OperationCanceled" + | "InvalidDisplayNameRandomSuffixLength" + | "AllowNonUniquePlayerDisplayNamesDisableNotAllowed" + | "PartitionedEventInvalid" + | "PartitionedEventCountOverLimit" + | "ManageEventNamespaceInvalid" + | "ManageEventNameInvalid" + | "ManagedEventNotFound" + | "ManageEventsInvalidRatio" + | "ManagedEventInvalid" + | "PlayerCustomPropertiesPropertyNameTooLong" + | "PlayerCustomPropertiesPropertyNameIsInvalid" + | "PlayerCustomPropertiesStringPropertyValueTooLong" + | "PlayerCustomPropertiesValueIsInvalidType" + | "PlayerCustomPropertiesVersionMismatch" + | "PlayerCustomPropertiesPropertyCountTooHigh" + | "PlayerCustomPropertiesDuplicatePropertyName" + | "PlayerCustomPropertiesPropertyDoesNotExist" + | "AddonAlreadyExists" + | "AddonDoesntExist" + | "TrueSkillUnauthorized" + | "TrueSkillInvalidTitleId" + | "TrueSkillInvalidScenarioId" + | "TrueSkillInvalidModelId" + | "TrueSkillInvalidModelName" + | "TrueSkillInvalidPlayerIds" + | "TrueSkillInvalidEntityKey" + | "TrueSkillInvalidConditionKey" + | "TrueSkillInvalidConditionValue" + | "TrueSkillInvalidConditionAffinityWeight" + | "TrueSkillInvalidEventName" + | "TrueSkillMatchResultCreated" + | "TrueSkillMatchResultAlreadySubmitted" + | "TrueSkillBadPlayerIdInMatchResult" + | "TrueSkillInvalidBotIdInMatchResult" + | "TrueSkillDuplicatePlayerInMatchResult" + | "TrueSkillNoPlayerInMatchResultTeam" + | "TrueSkillPlayersInMatchResultExceedingLimit" + | "TrueSkillInvalidPreMatchPartyInMatchResult" + | "TrueSkillInvalidTimestampInMatchResult" + | "TrueSkillStartTimeMissingInMatchResult" + | "TrueSkillEndTimeMissingInMatchResult" + | "TrueSkillInvalidPlayerSecondsPlayedInMatchResult" + | "TrueSkillNoTeamInMatchResult" + | "TrueSkillNotEnoughTeamsInMatchResult" + | "TrueSkillInvalidRanksInMatchResult" + | "TrueSkillNoWinnerInMatchResult" + | "TrueSkillMissingRequiredCondition" + | "TrueSkillMissingRequiredEvent" + | "TrueSkillUnknownEventName" + | "TrueSkillInvalidEventCount" + | "TrueSkillUnknownConditionKey" + | "TrueSkillUnknownConditionValue" + | "TrueSkillScenarioConfigDoesNotExist" + | "TrueSkillUnknownModelId" + | "TrueSkillNoModelInScenario" + | "TrueSkillNotSupportedForTitle" + | "TrueSkillModelIsNotActive" + | "TrueSkillUnauthorizedToQueryOtherPlayerSkills" + | "TrueSkillInvalidMaxIterations" + | "TrueSkillEndTimeBeforeStartTime" + | "TrueSkillInvalidJobId" + | "TrueSkillInvalidMetadataId" + | "TrueSkillMissingBuildVerison" + | "TrueSkillJobAlreadyExists" + | "TrueSkillJobNotFound" + | "TrueSkillOperationCanceled" + | "TrueSkillActiveModelLimitExceeded" + | "TrueSkillTotalModelLimitExceeded" + | "TrueSkillUnknownInitialModelId" + | "TrueSkillUnauthorizedForJob" + | "TrueSkillInvalidScenarioName" + | "TrueSkillConditionStateIsRequired" + | "TrueSkillEventStateIsRequired" + | "TrueSkillDuplicateEvent" + | "TrueSkillDuplicateCondition" + | "TrueSkillInvalidAnomalyThreshold" + | "TrueSkillConditionKeyLimitExceeded" + | "TrueSkillConditionValuePerKeyLimitExceeded" + | "TrueSkillInvalidTimestamp" + | "TrueSkillEventLimitExceeded" + | "TrueSkillInvalidPlayers" + | "TrueSkillTrueSkillPlayerNull" + | "TrueSkillInvalidPlayerId" + | "TrueSkillInvalidSquadSize" + | "TrueSkillConditionSetNotInModel" + | "TrueSkillModelStateInvalidForOperation" + | "TrueSkillScenarioContainsActiveModel" + | "TrueSkillInvalidConditionRank" + | "TrueSkillTotalScenarioLimitExceeded" + | "TrueSkillInvalidConditionsList" + | "GameSaveManifestNotFound" + | "GameSaveManifestVersionAlreadyExists" + | "GameSaveConflictUpdatingManifest" + | "GameSaveManifestUpdatesNotAllowed" + | "GameSaveFileAlreadyExists" + | "GameSaveManifestVersionNotFinalized" + | "GameSaveUnknownFileInManifest" + | "GameSaveFileExceededReportedSize" + | "GameSaveFileNotUploaded" + | "GameSaveBadRequest" + | "GameSaveOperationNotAllowed" + | "GameSaveDataStorageQuotaExceeded" + | "GameSaveNewerManifestExists" + | "GameSaveBaseVersionNotAvailable" + | "GameSaveManifestVersionQuarantined" + | "GameSaveManifestUploadProgressUpdateNotAllowed" + | "GameSaveNotFinalizedManifestNotEligibleAsKnownGood" + | "GameSaveNoUpdatesRequested" + | "GameSaveTitleDoesNotExist" + | "GameSaveOperationNotAllowedForTitle" + | "GameSaveManifestFilesLimitExceeded" + | "GameSaveManifestDescriptionUpdateNotAllowed" + | "GameSaveTitleConfigNotFound" + | "GameSaveTitleAlreadyOnboarded" + | "GameSaveServiceNotEnabledForTitle" + | "GameSaveServiceOnboardingPending" + | "GameSaveManifestNotEligibleAsConflictingVersion" + | "GameSaveServiceUnavailable" + | "GameSaveConflict" + | "GameSaveManifestNotEligibleForRollback" + | "GameSaveTitleClientAnonymousAccountCreationNotDisabled" + | "GameSaveTitleConfigNoUpdatesRequested" + | "GameSavePlayerNotEligibleForTransfer" + | "StateShareForbidden" + | "StateShareTitleNotInFlight" + | "StateShareStateNotFound" + | "StateShareLinkNotFound" + | "StateShareStateRedemptionLimitExceeded" + | "StateShareStateRedemptionLimitNotUpdated" + | "StateShareCreatedStatesLimitExceeded" + | "StateShareIdMissingOrMalformed" + | "PlayerCreationDisabled" + | "AccountAlreadyExists" + | "TagInvalid" + | "TagTooLong" + | "StatisticColumnAggregationMismatch" + | "StatisticResetIntervalMismatch" + | "VersionConfigurationCannotBeSpecifiedForLinkedStat" + | "VersionConfigurationIsRequired" + | "InvalidEntityTypeForAggregation" + | "MultiLevelAggregationNotAllowed" + | "AggregationTypeNotAllowedForLinkedStat" + | "OperationDeniedDueToDefinitionPolicy" + | "StatisticUpdateNotAllowedWhileLinked" + | "UnsupportedEntityType" + | "EntityTypeSpecifiedRequiresAggregationSource" + | "PlayFabErrorEventNotSupportedForEntityType" + | "MetadataLengthExceeded" + | "MaxQueryableVersionsExceeded" + | "StatisticVersionIncrementNotAllowedWhileLinked" + | "StoreMetricsRequestInvalidInput" + | "StoreMetricsErrorRetrievingMetrics"; export interface GetActionsOnPlayersInSegmentTaskInstanceResult extends PlayFabModule.IPlayFabResultCommon { /** Parameter of this task instance */ @@ -2638,61 +3159,36 @@ declare module PlayFabAdminModels { } - export interface GetMatchmakerGameInfoRequest extends PlayFabModule.IPlayFabRequestCommon { - /** unique identifier of the lobby for which info is being requested */ - LobbyId: string; - - } - - export interface GetMatchmakerGameInfoResult extends PlayFabModule.IPlayFabResultCommon { - /** version identifier of the game server executable binary being run */ - BuildVersion?: string; - /** time when Game Server Instance is currently scheduled to end */ - EndTime?: string; - /** unique identifier of the lobby */ - LobbyId?: string; - /** game mode for this Game Server Instance */ - Mode?: string; - /** array of unique PlayFab identifiers for users currently connected to this Game Server Instance */ - Players?: string[]; - /** region in which the Game Server Instance is running */ - Region?: string; - /** IPV4 address of the server */ - ServerIPV4Address?: string; - /** IPV6 address of the server */ - ServerIPV6Address?: string; - /** communication port for this Game Server Instance */ - ServerPort: number; - /** Public DNS name (if any) of the server */ - ServerPublicDNSName?: string; - /** time when the Game Server Instance was created */ - StartTime: string; - /** unique identifier of the Game Server Instance for this lobby */ - TitleId?: string; - - } - - export interface GetMatchmakerGameModesRequest extends PlayFabModule.IPlayFabRequestCommon { - /** previously uploaded build version for which game modes are being requested */ - BuildVersion: string; + export interface GetPlayedTitleListRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; } - export interface GetMatchmakerGameModesResult extends PlayFabModule.IPlayFabResultCommon { - /** array of game modes available for the specified build */ - GameModes?: GameModeInfo[]; + export interface GetPlayedTitleListResult extends PlayFabModule.IPlayFabResultCommon { + /** List of titles the player has played */ + TitleIds?: string[]; } - export interface GetPlayedTitleListRequest extends PlayFabModule.IPlayFabRequestCommon { + export interface GetPlayerCustomPropertyRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; + /** Specific property name to search for in the player's properties. */ + PropertyName: string; } - export interface GetPlayedTitleListResult extends PlayFabModule.IPlayFabResultCommon { - /** List of titles the player has played */ - TitleIds?: string[]; + export interface GetPlayerCustomPropertyResult extends PlayFabModule.IPlayFabResultCommon { + /** PlayFab unique identifier of the user whose properties are being returned. */ + PlayFabId?: string; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + /** Player specific property and its corresponding value. */ + Property?: CustomPropertyDetails; } @@ -2749,30 +3245,17 @@ declare module PlayFabAdminModels { } - export interface GetPlayersInSegmentRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Continuation token if retrieving subsequent pages of results. */ - ContinuationToken?: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Maximum number of profiles to load. Default is 1,000. Maximum is 10,000. */ - MaxBatchSize?: number; - /** - * Number of seconds to keep the continuation token active. After token expiration it is not possible to continue paging - * results. Default is 300 (5 minutes). Maximum is 1,800 (30 minutes). - */ - SecondsToLive?: number; - /** Unique identifier for this segment. */ - SegmentId: string; + export interface GetPlayersInSegmentExportRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique identifier of the export for the requested Segment. */ + ExportId: string; } - export interface GetPlayersInSegmentResult extends PlayFabModule.IPlayFabResultCommon { - /** Continuation token to use to retrieve subsequent pages of results. If token returns null there are no more results. */ - ContinuationToken?: string; - /** Array of player profiles in this segment. */ - PlayerProfiles?: PlayerProfile[]; - /** Count of profiles matching this segment. */ - ProfilesInSegment: number; + export interface GetPlayersInSegmentExportResponse extends PlayFabModule.IPlayFabResultCommon { + /** Url from which the index file can be downloaded. */ + IndexUrl?: string; + /** Shows the current status of the export */ + State?: string; } @@ -2827,12 +3310,17 @@ declare module PlayFabAdminModels { } export interface GetPolicyRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The name of the policy to read. Only supported name is 'ApiPolicy'. */ + /** + * The name of the policy to read. Only 'ApiPolicy' is supported. This parameter is optional and defaults to 'ApiPolicy' if + * omitted. + */ PolicyName?: string; } export interface GetPolicyResponse extends PlayFabModule.IPlayFabResultCommon { + /** The UTC date and time when the policy was last updated. Null if the policy has never been customized. */ + LastUpdated?: string; /** The name of the policy read. */ PolicyName?: string; /** Policy version. */ @@ -2866,6 +3354,18 @@ declare module PlayFabAdminModels { } + export interface GetSegmentPlayerCountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique identifier for the requested segment. */ + SegmentId: string; + + } + + export interface GetSegmentPlayerCountResult extends PlayFabModule.IPlayFabResultCommon { + /** Count of profiles matching this segment. */ + ProfilesInSegment: number; + + } + export interface GetSegmentResult { /** Identifier of the segments AB Test, if it is attached to one. */ ABTestParent?: string; @@ -2890,52 +3390,6 @@ declare module PlayFabAdminModels { } - export interface GetServerBuildInfoRequest extends PlayFabModule.IPlayFabRequestCommon { - /** unique identifier of the previously uploaded build executable for which information is being requested */ - BuildId: string; - - } - - export interface GetServerBuildInfoResult extends PlayFabModule.IPlayFabResultCommon { - /** array of regions where this build can used, when it is active */ - ActiveRegions?: string[]; - /** unique identifier for this build executable */ - BuildId?: string; - /** developer comment(s) for this build */ - Comment?: string; - /** error message, if any, about this build */ - ErrorMessage?: string; - /** maximum number of game server instances that can run on a single host machine */ - MaxGamesPerHost: number; - /** - * minimum capacity of additional game server instances that can be started before the autoscaling service starts new host - * machines (given the number of current running host machines and game server instances) - */ - MinFreeGameSlots: number; - /** the current status of the build validation and processing steps */ - Status?: string; - /** time this build was last modified (or uploaded, if this build has never been modified) */ - Timestamp: string; - /** - * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a - * title has been selected. - */ - TitleId?: string; - - } - - export interface GetServerBuildUploadURLRequest extends PlayFabModule.IPlayFabRequestCommon { - /** unique identifier of the game server build to upload */ - BuildId: string; - - } - - export interface GetServerBuildUploadURLResult extends PlayFabModule.IPlayFabResultCommon { - /** pre-authorized URL for uploading the game server build package */ - URL?: string; - - } - export interface GetStoreItemsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version to store items from. Use default catalog version if null */ CatalogVersion?: string; @@ -3122,6 +3576,16 @@ declare module PlayFabAdminModels { } + export interface GrantItemContent { + /** The catalog version of the item to be granted to the player */ + CatalogVersion?: string; + /** The id of item to be granted to the player */ + ItemId?: string; + /** Quantity of the item to be granted to a player */ + ItemQuantity: number; + + } + export interface GrantItemSegmentAction { /** Item catalog id. */ CatelogId?: string; @@ -3148,6 +3612,14 @@ declare module PlayFabAdminModels { } + export interface GrantVirtualCurrencyContent { + /** Amount of currency to be granted to a player */ + CurrencyAmount: number; + /** Code of the currency to be granted to a player */ + CurrencyCode: string; + + } + export interface GrantVirtualCurrencySegmentAction { /** Virtual currency amount. */ Amount: number; @@ -3172,6 +3644,14 @@ declare module PlayFabAdminModels { } + export interface IncrementPlayerStatisticContent { + /** Amount(in whole number) to increase the player statistic by */ + StatisticChangeBy: number; + /** Name of the player statistic to be incremented */ + StatisticName: string; + + } + export interface IncrementPlayerStatisticSegmentAction { /** Increment value. */ IncrementValue: number; @@ -3304,23 +3784,32 @@ declare module PlayFabAdminModels { } - export interface ListBuildsRequest extends PlayFabModule.IPlayFabRequestCommon { + export interface ListOpenIdConnectionRequest extends PlayFabModule.IPlayFabRequestCommon { } - export interface ListBuildsResult extends PlayFabModule.IPlayFabResultCommon { - /** array of uploaded game server builds */ - Builds?: GetServerBuildInfoResult[]; + export interface ListOpenIdConnectionResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of Open ID Connections */ + Connections?: OpenIdConnection[]; } - export interface ListOpenIdConnectionRequest extends PlayFabModule.IPlayFabRequestCommon { + export interface ListPlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; } - export interface ListOpenIdConnectionResponse extends PlayFabModule.IPlayFabResultCommon { - /** The list of Open ID Connections */ - Connections?: OpenIdConnection[]; + export interface ListPlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** PlayFab unique identifier of the user whose properties are being returned. */ + PlayFabId?: string; + /** Player specific properties and their corresponding values for this title. */ + Properties?: CustomPropertyDetails[]; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; } @@ -3355,6 +3844,7 @@ declare module PlayFabAdminModels { } type LoginIdentityProvider = "Unknown" + | "PlayFab" | "Custom" | "GameCenter" @@ -3374,7 +3864,11 @@ declare module PlayFabAdminModels { | "FacebookInstantGames" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface LogStatement { /** Optional object accompanying the message as contextual information */ @@ -3420,73 +3914,6 @@ declare module PlayFabAdminModels { } - export interface ModifyMatchmakerGameModesRequest extends PlayFabModule.IPlayFabRequestCommon { - /** previously uploaded build version for which game modes are being specified */ - BuildVersion: string; - /** array of game modes (Note: this will replace all game modes for the indicated build version) */ - GameModes: GameModeInfo[]; - - } - - export interface ModifyMatchmakerGameModesResult extends PlayFabModule.IPlayFabResultCommon { - - } - - export interface ModifyServerBuildRequest extends PlayFabModule.IPlayFabRequestCommon { - /** array of regions where this build can used, when it is active */ - ActiveRegions?: string[]; - /** unique identifier of the previously uploaded build executable to be updated */ - BuildId: string; - /** appended to the end of the command line when starting game servers */ - CommandLineTemplate?: string; - /** developer comment(s) for this build */ - Comment?: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** path to the game server executable. Defaults to gameserver.exe */ - ExecutablePath?: string; - /** maximum number of game server instances that can run on a single host machine */ - MaxGamesPerHost: number; - /** - * minimum capacity of additional game server instances that can be started before the autoscaling service starts new host - * machines (given the number of current running host machines and game server instances) - */ - MinFreeGameSlots: number; - /** new timestamp */ - Timestamp?: string; - - } - - export interface ModifyServerBuildResult extends PlayFabModule.IPlayFabResultCommon { - /** array of regions where this build can used, when it is active */ - ActiveRegions?: string[]; - /** unique identifier for this build executable */ - BuildId?: string; - /** appended to the end of the command line when starting game servers */ - CommandLineTemplate?: string; - /** developer comment(s) for this build */ - Comment?: string; - /** path to the game server executable. Defaults to gameserver.exe */ - ExecutablePath?: string; - /** maximum number of game server instances that can run on a single host machine */ - MaxGamesPerHost: number; - /** - * minimum capacity of additional game server instances that can be started before the autoscaling service starts new host - * machines (given the number of current running host machines and game server instances) - */ - MinFreeGameSlots: number; - /** the current status of the build validation and processing steps */ - Status?: string; - /** time this build was last modified (or uploaded, if this build has never been modified) */ - Timestamp: string; - /** - * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a - * title has been selected. - */ - TitleId?: string; - - } - export interface ModifyUserVirtualCurrencyResult extends PlayFabModule.IPlayFabResultCommon { /** Balance of the virtual currency after modification. */ Balance: number; @@ -3510,6 +3937,12 @@ declare module PlayFabAdminModels { } + type NewsStatus = "None" + + | "Unpublished" + | "Published" + | "Archived"; + export interface OpenIdConnection { /** The client ID given by the ID provider. */ ClientId?: string; @@ -3519,8 +3952,12 @@ declare module PlayFabAdminModels { ConnectionId?: string; /** Shows if data about the connection will be loaded from the issuer's discovery document */ DiscoverConfiguration: boolean; + /** Ignore 'nonce' claim in identity tokens. */ + IgnoreNonce?: boolean; /** Information for an OpenID Connect provider. */ IssuerInformation?: OpenIdIssuerInformation; + /** Override the issuer name for user indexing and lookup. */ + IssuerOverride?: string; } @@ -3537,15 +3974,18 @@ declare module PlayFabAdminModels { } export interface PermissionStatement { - /** The action this statement effects. The only supported action is 'Execute'. */ - Action: string; + /** The action this statement effects. May only be '*'. This parameter is optional and defaults to '*' if omitted. */ + Action?: string; /** Additional conditions to be applied for API Resources. */ ApiConditions?: ApiCondition; /** A comment about the statement. Intended solely for bookkeeping and debugging. */ Comment?: string; /** The effect this statement will have. It could be either Allow or Deny */ Effect: string; - /** The principal this statement will effect. The only supported principal is '*'. */ + /** + * The principal this statement will effect. May be '*' to match all callers, or a JSON object targeting a specific entity + * type, e.g. {"title_player_account":"*"} for players or {"master_player_account":"*"} for master player accounts. + */ Principal: string; /** * The resource this statements effects. The only supported resources look like 'pfrn:api--*' for all apis, or @@ -3555,75 +3995,27 @@ declare module PlayFabAdminModels { } - export interface PlayerLinkedAccount { - /** Linked account's email */ - Email?: string; - /** Authentication platform */ - Platform?: string; - /** Platform user identifier */ - PlatformUserId?: string; - /** Linked account's username */ - Username?: string; + export interface PlayerChurnPredictionSegmentFilter { + /** Comparison */ + Comparison?: string; + /** RiskLevel */ + RiskLevel?: string; } - export interface PlayerLocation { - /** City of the player's geographic location. */ - City?: string; - /** The two-character continent code for this location */ - ContinentCode: string; - /** The two-character ISO 3166-1 country code for the country associated with the location */ - CountryCode: string; - /** Latitude coordinate of the player's geographic location. */ - Latitude?: number; - /** Longitude coordinate of the player's geographic location. */ - Longitude?: number; + export interface PlayerChurnPredictionTimeSegmentFilter { + /** Comparison */ + Comparison?: string; + /** DurationInDays */ + DurationInDays: number; } - export interface PlayerProfile { - /** Array of ad campaigns player has been attributed to */ - AdCampaignAttributions?: AdCampaignAttribution[]; - /** Image URL of the player's avatar. */ - AvatarUrl?: string; - /** Banned until UTC Date. If permanent ban this is set for 20 years after the original ban date. */ - BannedUntil?: string; - /** Array of contact email addresses associated with the player */ - ContactEmailAddresses?: ContactEmailInfo[]; - /** Player record created */ - Created?: string; - /** Player Display Name */ - DisplayName?: string; - /** Last login */ - LastLogin?: string; - /** Array of third party accounts linked to this player */ - LinkedAccounts?: PlayerLinkedAccount[]; - /** Dictionary of player's locations by type. */ - Locations?: { [key: string]: PlayerLocation }; - /** Player account origination */ - Origination?: string; - /** List of player variants for experimentation */ - PlayerExperimentVariants?: string[]; - /** PlayFab Player ID */ - PlayerId?: string; - /** Array of player statistics */ - PlayerStatistics?: PlayerStatistic[]; - /** Publisher this player belongs to */ - PublisherId?: string; - /** Array of configured push notification end points */ - PushNotificationRegistrations?: PushNotificationRegistration[]; - /** Dictionary of player's statistics using only the latest version's value */ - Statistics?: { [key: string]: number }; - /** List of player's tags for segmentation. */ - Tags?: string[]; - /** Title ID this profile applies to */ - TitleId?: string; - /** A sum of player's total purchases in USD across all currencies. */ - TotalValueToDateInUSD?: number; - /** Dictionary of player's total purchases by currency. */ - ValuesToDate?: { [key: string]: number }; - /** Dictionary of player's virtual currency balances */ - VirtualCurrencyBalances?: { [key: string]: number }; + export interface PlayerChurnPreviousPredictionSegmentFilter { + /** Comparison */ + Comparison?: string; + /** RiskLevel */ + RiskLevel?: string; } @@ -3640,7 +4032,11 @@ declare module PlayFabAdminModels { Created?: string; /** Player display name */ DisplayName?: string; - /** List of experiment variants for the player. */ + /** + * List of experiment variants for the player. Note that these variants are not guaranteed to be up-to-date when returned + * during login because the player profile is updated only after login. Instead, use the LoginResult.TreatmentAssignment + * property during login to get the correct variants and variables. + */ ExperimentVariants?: string[]; /** UTC time when the player most recently logged in to the title */ LastLogin?: string; @@ -3712,18 +4108,6 @@ declare module PlayFabAdminModels { } - export interface PlayerStatistic { - /** Statistic ID */ - Id?: string; - /** Statistic name */ - Name?: string; - /** Current statistic value */ - StatisticValue: number; - /** Statistic version (0 if not a versioned statistic) */ - StatisticVersion: number; - - } - export interface PlayerStatisticDefinition { /** the aggregation method to use in updating the statistic (defaults to last) */ AggregationMethod?: string; @@ -3756,17 +4140,37 @@ declare module PlayFabAdminModels { } - type PushNotificationPlatform = "ApplePushNotificationService" - | "GoogleCloudMessaging"; + export interface PolicyDiffSummary { + /** Number of new statements that would be added. */ + StatementsAdded: number; + /** Number of existing statements that would be removed. Only applicable when OverwritePolicy is true. */ + StatementsRemoved: number; + /** + * Number of existing statements that would be replaced by functionally equivalent incoming statements (e.g., same + * resource/effect/principal but different comment). + */ + StatementsReplaced: number; + /** Number of existing statements that would remain unchanged. */ + StatementsUnchanged: number; + /** Total number of statements in the resulting policy. */ + TotalResultingStatements: number; - export interface PushNotificationRegistration { - /** Notification configured endpoint */ - NotificationEndpointARN?: string; - /** Push notification platform */ - Platform?: string; + } + + export interface PushNotificationContent { + /** Text of message to send. */ + Message?: string; + /** Id of the push notification template. */ + PushNotificationTemplateId?: string; + /** Subject of message to send (may not be displayed in all platforms) */ + Subject?: string; } + type PushNotificationPlatform = "ApplePushNotificationService" + + | "GoogleCloudMessaging"; + export interface PushNotificationRegistrationModel { /** Notification configured endpoint */ NotificationEndpointARN?: string; @@ -3788,6 +4192,7 @@ declare module PlayFabAdminModels { } type PushSetupPlatform = "GCM" + | "APNS" | "APNS_SANDBOX"; @@ -3829,14 +4234,6 @@ declare module PlayFabAdminModels { } - type Region = "USCentral" - | "USEast" - | "EUWest" - | "Singapore" - | "Japan" - | "Brazil" - | "Australia"; - export interface RemovePlayerTagRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -3851,16 +4248,6 @@ declare module PlayFabAdminModels { } - export interface RemoveServerBuildRequest extends PlayFabModule.IPlayFabRequestCommon { - /** unique identifier of the previously uploaded build executable to be removed */ - BuildId: string; - - } - - export interface RemoveServerBuildResult extends PlayFabModule.IPlayFabResultCommon { - - } - export interface RemoveVirtualCurrencyTypesRequest extends PlayFabModule.IPlayFabRequestCommon { /** List of virtual currencies to delete */ VirtualCurrencies: VirtualCurrencyData[]; @@ -3908,6 +4295,7 @@ declare module PlayFabAdminModels { } type ResolutionOutcome = "Revoke" + | "Reinstate" | "Manual"; @@ -3947,6 +4335,7 @@ declare module PlayFabAdminModels { } type ResultTableNodeType = "ItemId" + | "TableId"; export interface RevokeAllBansForUserRequest extends PlayFabModule.IPlayFabRequestCommon { @@ -4060,6 +4449,7 @@ declare module PlayFabAdminModels { } type ScheduledTaskType = "CloudScript" + | "ActionsOnPlayerSegment" | "CloudScriptAzureFunctions" | "InsightsScheduledScaling"; @@ -4082,6 +4472,16 @@ declare module PlayFabAdminModels { AdCampaignFilter?: AdCampaignSegmentFilter; /** property for all player filter. */ AllPlayersFilter?: AllPlayersSegmentFilter; + /** Filter property for player churn risk level. */ + ChurnPredictionFilter?: ChurnPredictionSegmentFilter; + /** Filter property for boolean custom properties. */ + CustomPropertyBooleanFilter?: CustomPropertyBooleanSegmentFilter; + /** Filter property for datetime custom properties. */ + CustomPropertyDateTimeFilter?: CustomPropertyDateTimeSegmentFilter; + /** Filter property for numeric custom properties. */ + CustomPropertyNumericFilter?: CustomPropertyNumericSegmentFilter; + /** Filter property for string custom properties. */ + CustomPropertyStringFilter?: CustomPropertyStringSegmentFilter; /** Filter property for first login date. */ FirstLoginDateFilter?: FirstLoginDateSegmentFilter; /** Filter property for first login timespan. */ @@ -4096,6 +4496,12 @@ declare module PlayFabAdminModels { LinkedUserAccountHasEmailFilter?: LinkedUserAccountHasEmailSegmentFilter; /** Filter property for location. */ LocationFilter?: LocationSegmentFilter; + /** Filter property for current player churn value. */ + PlayerChurnPredictionFilter?: PlayerChurnPredictionSegmentFilter; + /** Filter property for player churn timespan. */ + PlayerChurnPredictionTimeFilter?: PlayerChurnPredictionTimeSegmentFilter; + /** Filter property for previous player churn value. */ + PlayerChurnPreviousPredictionFilter?: PlayerChurnPreviousPredictionSegmentFilter; /** Filter property for push notification. */ PushNotificationFilter?: PushNotificationSegmentFilter; /** Filter property for statistics. */ @@ -4114,6 +4520,7 @@ declare module PlayFabAdminModels { } type SegmentCountryCode = "AF" + | "AX" | "AL" | "DZ" @@ -4364,6 +4771,7 @@ declare module PlayFabAdminModels { | "ZW"; type SegmentCurrency = "AED" + | "AFN" | "ALL" | "AMD" @@ -4527,6 +4935,7 @@ declare module PlayFabAdminModels { | "ZWD"; type SegmentFilterComparison = "GreaterThan" + | "LessThan" | "EqualTo" | "NotEqualTo" @@ -4537,6 +4946,7 @@ declare module PlayFabAdminModels { | "NotContains"; type SegmentLoginIdentityProvider = "Unknown" + | "PlayFab" | "Custom" | "GameCenter" @@ -4556,7 +4966,8 @@ declare module PlayFabAdminModels { | "FacebookInstantGames" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames"; export interface SegmentModel { /** Segment description. */ @@ -4583,11 +4994,16 @@ declare module PlayFabAdminModels { } type SegmentPushNotificationDevicePlatform = "ApplePushNotificationService" + | "GoogleCloudMessaging"; export interface SegmentTrigger { + /** Add inventory item v2 segment trigger action. */ + AddInventoryItemsV2Action?: AddInventoryItemsV2SegmentAction; /** Ban player segment trigger action. */ BanPlayerAction?: BanPlayerSegmentAction; + /** Delete inventory item v2 segment trigger action. */ + DeleteInventoryItemsV2Action?: DeleteInventoryItemsV2SegmentAction; /** Delete player segment trigger action. */ DeletePlayerAction?: DeletePlayerSegmentAction; /** Delete player statistic segment trigger action. */ @@ -4606,6 +5022,8 @@ declare module PlayFabAdminModels { IncrementPlayerStatisticAction?: IncrementPlayerStatisticSegmentAction; /** Push notification segment trigger action. */ PushNotificationAction?: PushNotificationSegmentAction; + /** Subtract inventory item v2 segment trigger action. */ + SubtractInventoryItemsV2Action?: SubtractInventoryItemsV2SegmentAction; } @@ -4623,8 +5041,30 @@ declare module PlayFabAdminModels { } + export interface SendEmailContent { + /** The email template id of the email template to send. */ + EmailTemplateId: string; + + } + + export interface SetMembershipOverrideRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Expiration time for the membership in DateTime format, will override any subscription expirations. */ + ExpirationTime: string; + /** Id of the membership to apply the override expiration date to. */ + MembershipId: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface SetMembershipOverrideResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface SetPlayerSecretRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; @@ -4699,11 +5139,8 @@ declare module PlayFabAdminModels { Credential: string; /** for APNS, this is the PlatformPrincipal (SSL Certificate) */ Key?: string; - /** - * name of the application sending the message (application names must be made up of only uppercase and lowercase ASCII - * letters, numbers, underscores, hyphens, and periods, and must be between 1 and 256 characters long) - */ - Name: string; + /** This field is deprecated and any usage of this will cause the API to fail. */ + Name?: string; /** * replace any existing ARN with the newly generated one. If this is set to false, an error will be returned if * notifications have already setup for this platform. @@ -4734,6 +5171,7 @@ declare module PlayFabAdminModels { } type SourceType = "Admin" + | "BackEnd" | "GameClient" | "GameServer" @@ -4742,6 +5180,7 @@ declare module PlayFabAdminModels { | "API"; type StatisticAggregationMethod = "Last" + | "Min" | "Max" | "Sum"; @@ -4757,6 +5196,7 @@ declare module PlayFabAdminModels { } type StatisticResetIntervalOption = "Never" + | "Hour" | "Day" | "Week" @@ -4777,12 +5217,14 @@ declare module PlayFabAdminModels { } type StatisticVersionArchivalStatus = "NotScheduled" + | "Scheduled" | "Queued" | "InProgress" | "Complete"; type StatisticVersionStatus = "Active" + | "SnapshotPending" | "Snapshot" | "ArchivalPending" @@ -4834,6 +5276,7 @@ declare module PlayFabAdminModels { } type SubscriptionProviderStatus = "NoError" + | "Cancelled" | "UnknownError" | "BillingError" @@ -4842,6 +5285,34 @@ declare module PlayFabAdminModels { | "FreeTrial" | "PaymentPending"; + export interface SubtractInventoryItemsV2SegmentAction { + /** Amount of the item to removed from the player */ + Amount?: number; + /** The collection id for where the item will be removed from the player inventory */ + CollectionId?: string; + /** The duration in seconds to be removed from the subscription in the players inventory */ + DurationInSeconds?: number; + /** The id of item to be removed from the player */ + ItemId?: string; + /** The stack id for where the item will be removed from the player inventory */ + StackId?: string; + + } + + export interface SubtractInventoryItemV2Content { + /** Amount of the item to removed from the player */ + Amount?: number; + /** The collection id for where the item will be removed from the player inventory */ + CollectionId?: string; + /** The duration in seconds to be removed from the subscription in the players inventory */ + DurationInSeconds?: number; + /** The id of item to be removed from the player */ + ItemId?: string; + /** The stack id for where the item will be removed from the player inventory */ + StackId?: string; + + } + export interface SubtractUserVirtualCurrencyRequest extends PlayFabModule.IPlayFabRequestCommon { /** Amount to be subtracted from the user balance of the specified virtual currency. */ Amount: number; @@ -4893,6 +5364,7 @@ declare module PlayFabAdminModels { } type TaskInstanceStatus = "Succeeded" + | "Starting" | "InProgress" | "Failed" @@ -4900,6 +5372,7 @@ declare module PlayFabAdminModels { | "Stalled"; type TitleActivationStatus = "None" + | "ActivatedTitleKey" | "PendingSteam" | "ActivatedSteam" @@ -4933,12 +5406,12 @@ declare module PlayFabAdminModels { Expires?: string; /** The updated IP address for the ban. Null for no change. */ IPAddress?: string; - /** The updated MAC address for the ban. Null for no change. */ - MACAddress?: string; /** Whether to make this ban permanent. Set to true to make this ban permanent. This will not modify Active state. */ Permanent?: boolean; /** The updated reason for the ban to be updated. Maximum 140 characters. Null for no change. */ Reason?: string; + /** The updated family type of the user that should be included in the ban. Null for no change. */ + UserFamilyType?: string; } @@ -5003,10 +5476,40 @@ declare module PlayFabAdminModels { ClientSecret?: string; /** A name for the connection that identifies it within the title. */ ConnectionId: string; + /** Ignore 'nonce' claim in identity tokens. */ + IgnoreNonce?: boolean; /** The issuer URL or discovery document URL to read issuer information from */ IssuerDiscoveryUrl?: string; /** Manually specified information for an OpenID Connect issuer. */ IssuerInformation?: OpenIdIssuerInformation; + /** Override the issuer name for user indexing and lookup. */ + IssuerOverride?: string; + + } + + export interface UpdatePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Optional field used for concurrency control. One can ensure that the update operation will only be performed if the + * player's properties have not been updated by any other clients since last the version. + */ + ExpectedPropertiesVersion?: number; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** Collection of properties to be set for a player. */ + Properties: UpdateProperty[]; + + } + + export interface UpdatePlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** PlayFab unique identifier of the user whose properties were updated. */ + PlayFabId?: string; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; } @@ -5046,8 +5549,11 @@ declare module PlayFabAdminModels { export interface UpdatePolicyRequest extends PlayFabModule.IPlayFabRequestCommon { /** Whether to overwrite or append to the existing policy. */ OverwritePolicy: boolean; - /** The name of the policy being updated. Only supported name is 'ApiPolicy' */ - PolicyName: string; + /** + * The name of the policy being updated. Only 'ApiPolicy' is supported. This parameter is optional and defaults to + * 'ApiPolicy' if omitted. + */ + PolicyName?: string; /** Version of the policy to update. Must be the latest (as returned by GetPolicy). */ PolicyVersion: number; /** The new statements to include in the policy. */ @@ -5060,6 +5566,19 @@ declare module PlayFabAdminModels { PolicyName?: string; /** The statements included in the new version of the policy. */ Statements?: PermissionStatement[]; + /** + * Optional warnings about policy statements that may not have the intended effect. For example, resource paths that don't + * match any known API endpoint. The policy update still succeeds when warnings are present. + */ + Warnings?: string[]; + + } + + export interface UpdateProperty { + /** Name of the custom property. Can contain Unicode letters and digits. They are limited in size. */ + Name: string; + /** Value of the custom property. Limited to booleans, numbers, and strings. */ + Value: any; } @@ -5200,6 +5719,8 @@ declare module PlayFabAdminModels { AndroidDeviceInfo?: UserAndroidDeviceInfo; /** Sign in with Apple account information, if an Apple account has been linked */ AppleAccountInfo?: UserAppleIdInfo; + /** Battle.net account information, if a Battle.net account has been linked */ + BattleNetAccountInfo?: UserBattleNetInfo; /** Timestamp indicating when the user account was created */ Created: string; /** Custom ID information, if a custom ID has been assigned */ @@ -5212,6 +5733,8 @@ declare module PlayFabAdminModels { GameCenterInfo?: UserGameCenterInfo; /** User Google account information, if a Google account has been linked */ GoogleInfo?: UserGoogleInfo; + /** User Google Play Games account information, if a Google Play Games account has been linked */ + GooglePlayGamesInfo?: UserGooglePlayGamesInfo; /** User iOS device information, if an iOS device has been linked */ IosDeviceInfo?: UserIosDeviceInfo; /** User Kongregate account information, if a Kongregate account has been linked */ @@ -5226,8 +5749,10 @@ declare module PlayFabAdminModels { PlayFabId?: string; /** Personal information for the user which is considered more sensitive */ PrivateInfo?: UserPrivateAccountInfo; - /** User PSN account information, if a PSN account has been linked */ + /** User PlayStation :tm: Network account information, if a PlayStation :tm: Network account has been linked */ PsnInfo?: UserPsnInfo; + /** Server Custom ID information, if a server custom ID has been assigned */ + ServerCustomIdInfo?: UserServerCustomIdInfo; /** User Steam information, if a Steam account has been linked */ SteamInfo?: UserSteamInfo; /** Title-specific information for the user account */ @@ -5236,8 +5761,6 @@ declare module PlayFabAdminModels { TwitchInfo?: UserTwitchInfo; /** User account name in the PlayFab service */ Username?: string; - /** Windows Hello account information, if a Windows Hello account has been linked */ - WindowsHelloInfo?: UserWindowsHelloInfo; /** User XBox account information, if a XBox account has been linked */ XboxInfo?: UserXboxInfo; @@ -5255,6 +5778,14 @@ declare module PlayFabAdminModels { } + export interface UserBattleNetInfo { + /** Battle.net identifier */ + BattleNetAccountId?: string; + /** Battle.net display name */ + BattleNetBattleTag?: string; + + } + export interface UserCustomIdInfo { /** Custom ID */ CustomId?: string; @@ -5262,6 +5793,7 @@ declare module PlayFabAdminModels { } type UserDataPermission = "Private" + | "Public"; export interface UserDataRecord { @@ -5291,6 +5823,11 @@ declare module PlayFabAdminModels { } + type UserFamilyType = "None" + + | "Xbox" + | "Steam"; + export interface UserGameCenterInfo { /** Gamecenter identifier */ GameCenterId?: string; @@ -5311,6 +5848,16 @@ declare module PlayFabAdminModels { } + export interface UserGooglePlayGamesInfo { + /** Avatar image url of the Google Play Games player */ + GooglePlayGamesPlayerAvatarImageUrl?: string; + /** Display name of the Google Play Games player */ + GooglePlayGamesPlayerDisplayName?: string; + /** Google Play Games player ID */ + GooglePlayGamesPlayerId?: string; + + } + export interface UserIosDeviceInfo { /** iOS device ID */ IosDeviceId?: string; @@ -5348,6 +5895,7 @@ declare module PlayFabAdminModels { } type UserOrigination = "Organic" + | "Steam" | "Google" | "Amazon" @@ -5364,13 +5912,16 @@ declare module PlayFabAdminModels { | "XboxLive" | "Parse" | "Twitch" - | "WindowsHello" | "ServerCustomId" | "NintendoSwitchDeviceId" | "FacebookInstantGamesId" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserOriginationSegmentFilter { /** User login provider. */ @@ -5385,13 +5936,19 @@ declare module PlayFabAdminModels { } export interface UserPsnInfo { - /** PSN account ID */ + /** PlayStation :tm: Network account ID */ PsnAccountId?: string; - /** PSN online ID */ + /** PlayStation :tm: Network online ID */ PsnOnlineId?: string; } + export interface UserServerCustomIdInfo { + /** Custom ID */ + CustomId?: string; + + } + export interface UserSteamInfo { /** what stage of game ownership the user is listed as being in, from Steam */ SteamActivationStatus?: string; @@ -5440,17 +5997,44 @@ declare module PlayFabAdminModels { } - export interface UserWindowsHelloInfo { - /** Windows Hello Device Name */ - WindowsHelloDeviceName?: string; - /** Windows Hello Public Key Hash */ - WindowsHelloPublicKeyHash?: string; - - } - export interface UserXboxInfo { /** XBox user ID */ XboxUserId?: string; + /** XBox user sandbox */ + XboxUserSandbox?: string; + + } + + export interface ValidateApiPolicyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Whether the validation should simulate overwriting or appending to the existing policy. */ + OverwritePolicy: boolean; + /** + * The name of the policy to validate. Only 'ApiPolicy' is supported. This parameter is optional and defaults to + * 'ApiPolicy' if omitted. + */ + PolicyName?: string; + /** Version of the policy to validate against. Must be the latest (as returned by GetPolicy). */ + PolicyVersion: number; + /** The statements to validate. */ + Statements: PermissionStatement[]; + + } + + export interface ValidateApiPolicyResponse extends PlayFabModule.IPlayFabResultCommon { + /** Summary of what would change compared to the current policy. */ + Diff?: PolicyDiffSummary; + /** Whether the proposed policy is valid and would be accepted by UpdatePolicy. */ + IsValid: boolean; + /** The name of the policy validated. */ + PolicyName?: string; + /** Policy version. */ + PolicyVersion: number; + /** The full set of statements that would result from applying this update. */ + ResultingStatements?: PermissionStatement[]; + /** Validation errors that would cause UpdatePolicy to reject this request. Empty if IsValid is true. */ + ValidationErrors?: string[]; + /** Non-blocking warnings about the proposed policy (e.g., near statement limit, duplicate statements). */ + Warnings?: string[]; } diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabAuthenticationApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabAuthenticationApi.d.ts index 163bf7f2..58381549 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabAuthenticationApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabAuthenticationApi.d.ts @@ -4,22 +4,63 @@ declare module PlayFabAuthenticationModule { export interface IPlayFabAuthentication { ForgetAllCredentials(): void; + /** + * Create a game_server entity token and return a new or existing game_server entity. + * https://docs.microsoft.com/rest/api/playfab/authentication/authentication/authenticategameserverwithcustomid + */ + AuthenticateGameServerWithCustomId(request: PlayFabAuthenticationModels.AuthenticateCustomIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Delete a game_server entity. + * https://docs.microsoft.com/rest/api/playfab/authentication/authentication/delete + */ + Delete(request: PlayFabAuthenticationModels.DeleteRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Method to exchange a legacy AuthenticationTicket or title SecretKey for an Entity Token or to refresh a still valid * Entity Token. * https://docs.microsoft.com/rest/api/playfab/authentication/authentication/getentitytoken */ - GetEntityToken(request: PlayFabAuthenticationModels.GetEntityTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetEntityToken(request: PlayFabAuthenticationModels.GetEntityTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Method for a server to validate a client provided EntityToken. Only callable by the title entity. * https://docs.microsoft.com/rest/api/playfab/authentication/authentication/validateentitytoken */ - ValidateEntityToken(request: PlayFabAuthenticationModels.ValidateEntityTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ValidateEntityToken(request: PlayFabAuthenticationModels.ValidateEntityTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } declare module PlayFabAuthenticationModels { + export interface AuthenticateCustomIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * The customId used to create and retrieve game_server entity tokens. This is unique at the title level. CustomId must be + * between 32 and 100 characters. + */ + CustomId: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + + } + + export interface AuthenticateCustomIdResult extends PlayFabModule.IPlayFabResultCommon { + /** The token generated used to set X-EntityToken for game_server calls. */ + EntityToken?: EntityTokenResponse; + /** True if the account was newly created on this authentication. */ + NewlyCreated: boolean; + + } + + export interface DeleteRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The game_server entity to be removed. */ + Entity: EntityKey; + + } + + export interface EmptyResponse extends PlayFabModule.IPlayFabResultCommon { + + } + export interface EntityKey { /** Unique ID of the entity. */ Id: string; @@ -44,10 +85,20 @@ declare module PlayFabAuthenticationModels { } + export interface EntityTokenResponse { + /** The entity id and type. */ + Entity?: EntityKey; + /** The token used to set X-EntityToken for all entity based API calls. */ + EntityToken?: string; + /** The time the token will expire, if it is an expiring token, in UTC. */ + TokenExpiration?: string; + + } + export interface GetEntityTokenRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; } @@ -63,10 +114,19 @@ declare module PlayFabAuthenticationModels { } type IdentifiedDeviceType = "Unknown" + | "XboxOne" - | "Scarlett"; + | "Scarlett" + | "WindowsOneCore" + | "WindowsOneCoreMobile" + | "Win32" + | "android" + | "iOS" + | "PlayStation" + | "Nintendo"; type LoginIdentityProvider = "Unknown" + | "PlayFab" | "Custom" | "GameCenter" @@ -86,7 +146,11 @@ declare module PlayFabAuthenticationModels { | "FacebookInstantGames" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface ValidateEntityTokenRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ @@ -103,6 +167,8 @@ declare module PlayFabAuthenticationModels { IdentifiedDeviceType?: string; /** The identity provider for this entity, for the given login */ IdentityProvider?: string; + /** The ID issued by the identity provider, e.g. a XUID on Xbox Live */ + IdentityProviderIssuedId?: string; /** The lineage of this profile. */ Lineage?: EntityLineage; diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabClientApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabClientApi.d.ts index a5f4b62d..3819a54d 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabClientApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabClientApi.d.ts @@ -12,93 +12,97 @@ declare module PlayFabClientModule { * items will be swapped between the two players' inventories. * https://docs.microsoft.com/rest/api/playfab/client/trading/accepttrade */ - AcceptTrade(request: PlayFabClientModels.AcceptTradeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AcceptTrade(request: PlayFabClientModels.AcceptTradeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds the PlayFab user, based upon a match against a supplied unique identifier, to the friend list of the local user. At * least one of FriendPlayFabId,FriendUsername,FriendEmail, or FriendTitleDisplayName should be initialized. * https://docs.microsoft.com/rest/api/playfab/client/friend-list-management/addfriend */ - AddFriend(request: PlayFabClientModels.AddFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddFriend(request: PlayFabClientModels.AddFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds the specified generic service identifier to the player's PlayFab account. This is designed to allow for a PlayFab * ID lookup of any arbitrary service identifier a title wants to add. This identifier should never be used as * authentication credentials, as the intent is that it is easily accessible by other players. * https://docs.microsoft.com/rest/api/playfab/client/account-management/addgenericid */ - AddGenericID(request: PlayFabClientModels.AddGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddGenericID(request: PlayFabClientModels.AddGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds or updates a contact email to the player's profile. * https://docs.microsoft.com/rest/api/playfab/client/account-management/addorupdatecontactemail */ - AddOrUpdateContactEmail(request: PlayFabClientModels.AddOrUpdateContactEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddOrUpdateContactEmail(request: PlayFabClientModels.AddOrUpdateContactEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds users to the set of those able to update both the shared data, as well as the set of users in the group. Only users * in the group can add new members. Shared Groups are designed for sharing data between a very small number of players, * please see our guide: https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/addsharedgroupmembers */ - AddSharedGroupMembers(request: PlayFabClientModels.AddSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddSharedGroupMembers(request: PlayFabClientModels.AddSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds playfab username/password auth to an existing account created via an anonymous auth method, e.g. automatic device * ID login. * https://docs.microsoft.com/rest/api/playfab/client/account-management/addusernamepassword */ - AddUsernamePassword(request: PlayFabClientModels.AddUsernamePasswordRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddUsernamePassword(request: PlayFabClientModels.AddUsernamePasswordRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Increments the user's balance of the specified virtual currency by the stated amount + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Increments the user's balance of the specified virtual currency by the stated amount * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/adduservirtualcurrency */ - AddUserVirtualCurrency(request: PlayFabClientModels.AddUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddUserVirtualCurrency(request: PlayFabClientModels.AddUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Registers the Android device to receive push notifications * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/androiddevicepushnotificationregistration */ - AndroidDevicePushNotificationRegistration(request: PlayFabClientModels.AndroidDevicePushNotificationRegistrationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AndroidDevicePushNotificationRegistration(request: PlayFabClientModels.AndroidDevicePushNotificationRegistrationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Attributes an install for advertisment. * https://docs.microsoft.com/rest/api/playfab/client/advertising/attributeinstall */ - AttributeInstall(request: PlayFabClientModels.AttributeInstallRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AttributeInstall(request: PlayFabClientModels.AttributeInstallRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Cancels an open trade (one that has not yet been accepted or cancelled). Note that only the player who created the trade * can cancel it via this API call, to prevent griefing of the trade system (cancelling trades in order to prevent other * players from accepting them, for trades that can be claimed by more than one player). * https://docs.microsoft.com/rest/api/playfab/client/trading/canceltrade */ - CancelTrade(request: PlayFabClientModels.CancelTradeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CancelTrade(request: PlayFabClientModels.CancelTradeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Confirms with the payment provider that the purchase was approved (if applicable) and adjusts inventory and virtual - * currency balances as appropriate + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Confirms with the payment provider that the purchase was approved (if applicable) and adjusts inventory and + * virtual currency balances as appropriate * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/confirmpurchase */ - ConfirmPurchase(request: PlayFabClientModels.ConfirmPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ConfirmPurchase(request: PlayFabClientModels.ConfirmPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Consume uses of a consumable item. When all uses are consumed, it will be removed from the player's inventory. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Consume uses of a consumable item. When all uses are consumed, it will be removed from the player's + * inventory. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/consumeitem */ - ConsumeItem(request: PlayFabClientModels.ConsumeItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ConsumeItem(request: PlayFabClientModels.ConsumeItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Grants the player's current entitlements from Microsoft Store's Collection API * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/consumemicrosoftstoreentitlements */ - ConsumeMicrosoftStoreEntitlements(request: PlayFabClientModels.ConsumeMicrosoftStoreEntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ConsumeMicrosoftStoreEntitlements(request: PlayFabClientModels.ConsumeMicrosoftStoreEntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Checks for any new PS5 entitlements. If any are found, they are consumed (if they're consumables) and added as PlayFab - * items + * Checks for any new consumable entitlements. If any are found, they are consumed (if they're consumables) and added as + * PlayFab items * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/consumeps5entitlements */ - ConsumePS5Entitlements(request: PlayFabClientModels.ConsumePS5EntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ConsumePS5Entitlements(request: PlayFabClientModels.ConsumePS5EntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Checks for any new consumable entitlements. If any are found, they are consumed and added as PlayFab items * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/consumepsnentitlements */ - ConsumePSNEntitlements(request: PlayFabClientModels.ConsumePSNEntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ConsumePSNEntitlements(request: PlayFabClientModels.ConsumePSNEntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Grants the player's current entitlements from Xbox Live, consuming all availble items in Xbox and granting them to the * player's PlayFab inventory. This call is idempotent and will not grant previously granted items to the player. * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/consumexboxentitlements */ - ConsumeXboxEntitlements(request: PlayFabClientModels.ConsumeXboxEntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ConsumeXboxEntitlements(request: PlayFabClientModels.ConsumeXboxEntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Requests the creation of a shared group object, containing key/value pairs which may be updated by all members of the * group. Upon creation, the current user will be the only member of the group. Shared Groups are designed for sharing data @@ -106,58 +110,66 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/createsharedgroup */ - CreateSharedGroup(request: PlayFabClientModels.CreateSharedGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateSharedGroup(request: PlayFabClientModels.CreateSharedGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Executes a CloudScript function, with the 'currentPlayerId' set to the PlayFab ID of the authenticated player. + * Deletes title-specific custom properties for a player + * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/deleteplayercustomproperties + */ + DeletePlayerCustomProperties(request: PlayFabClientModels.DeletePlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Executes a CloudScript function, with the 'currentPlayerId' set to the PlayFab ID of the authenticated player. The + * PlayFab ID is the entity ID of the player's master_player_account entity. * https://docs.microsoft.com/rest/api/playfab/client/server-side-cloud-script/executecloudscript */ - ExecuteCloudScript(request: PlayFabClientModels.ExecuteCloudScriptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ExecuteCloudScript(request: PlayFabClientModels.ExecuteCloudScriptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the user's PlayFab account details * https://docs.microsoft.com/rest/api/playfab/client/account-management/getaccountinfo */ - GetAccountInfo(request: PlayFabClientModels.GetAccountInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetAccountInfo(request: PlayFabClientModels.GetAccountInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Returns a list of ad placements and a reward for each * https://docs.microsoft.com/rest/api/playfab/client/advertising/getadplacements */ - GetAdPlacements(request: PlayFabClientModels.GetAdPlacementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetAdPlacements(request: PlayFabClientModels.GetAdPlacementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all of the characters that belong to a specific user. CharacterIds are not globally unique; characterId must be * evaluated with the parent PlayFabId to guarantee uniqueness. * https://docs.microsoft.com/rest/api/playfab/client/characters/getalluserscharacters */ - GetAllUsersCharacters(request: PlayFabClientModels.ListUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetAllUsersCharacters(request: PlayFabClientModels.ListUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the specified version of the title's catalog of virtual goods, including all defined properties + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the specified version of the title's catalog of virtual goods, including all defined properties * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/getcatalogitems */ - GetCatalogItems(request: PlayFabClientModels.GetCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCatalogItems(request: PlayFabClientModels.GetCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the character which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/character-data/getcharacterdata */ - GetCharacterData(request: PlayFabClientModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterData(request: PlayFabClientModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the specified character's current inventory of virtual goods + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the specified character's current inventory of virtual goods * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/getcharacterinventory */ - GetCharacterInventory(request: PlayFabClientModels.GetCharacterInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterInventory(request: PlayFabClientModels.GetCharacterInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked characters for the given statistic, starting from the indicated point in the leaderboard * https://docs.microsoft.com/rest/api/playfab/client/characters/getcharacterleaderboard */ - GetCharacterLeaderboard(request: PlayFabClientModels.GetCharacterLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterLeaderboard(request: PlayFabClientModels.GetCharacterLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the character which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/client/character-data/getcharacterreadonlydata */ - GetCharacterReadOnlyData(request: PlayFabClientModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterReadOnlyData(request: PlayFabClientModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the details of all title-specific statistics for the user * https://docs.microsoft.com/rest/api/playfab/client/characters/getcharacterstatistics */ - GetCharacterStatistics(request: PlayFabClientModels.GetCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterStatistics(request: PlayFabClientModels.GetCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * This API retrieves a pre-signed URL for accessing a content file for the title. A subsequent HTTP GET to the returned * URL will attempt to download the content. A HEAD query to the returned URL will attempt to retrieve the metadata of the @@ -167,180 +179,212 @@ declare module PlayFabClientModule { * please be aware that the Content service is specifically PlayFab's CDN offering, for which standard CDN rates apply. * https://docs.microsoft.com/rest/api/playfab/client/content/getcontentdownloadurl */ - GetContentDownloadUrl(request: PlayFabClientModels.GetContentDownloadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Get details about all current running game servers matching the given parameters. - * https://docs.microsoft.com/rest/api/playfab/client/matchmaking/getcurrentgames - */ - GetCurrentGames(request: PlayFabClientModels.CurrentGamesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetContentDownloadUrl(request: PlayFabClientModels.GetContentDownloadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked friends of the current player for the given statistic, starting from the indicated point in * the leaderboard * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getfriendleaderboard */ - GetFriendLeaderboard(request: PlayFabClientModels.GetFriendLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetFriendLeaderboard(request: PlayFabClientModels.GetFriendLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked friends of the current player for the given statistic, centered on the requested PlayFab * user. If PlayFabId is empty or null will return currently logged in user. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getfriendleaderboardaroundplayer */ - GetFriendLeaderboardAroundPlayer(request: PlayFabClientModels.GetFriendLeaderboardAroundPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetFriendLeaderboardAroundPlayer(request: PlayFabClientModels.GetFriendLeaderboardAroundPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the current friend list for the local user, constrained to users who have PlayFab accounts. Friends from * linked accounts (Facebook, Steam) are also included. You may optionally exclude some linked services' friends. * https://docs.microsoft.com/rest/api/playfab/client/friend-list-management/getfriendslist */ - GetFriendsList(request: PlayFabClientModels.GetFriendsListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Get details about the regions hosting game servers matching the given parameters. - * https://docs.microsoft.com/rest/api/playfab/client/matchmaking/getgameserverregions - */ - GetGameServerRegions(request: PlayFabClientModels.GameServerRegionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetFriendsList(request: PlayFabClientModels.GetFriendsListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked users for the given statistic, starting from the indicated point in the leaderboard * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getleaderboard */ - GetLeaderboard(request: PlayFabClientModels.GetLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboard(request: PlayFabClientModels.GetLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked characters for the given statistic, centered on the requested Character ID * https://docs.microsoft.com/rest/api/playfab/client/characters/getleaderboardaroundcharacter */ - GetLeaderboardAroundCharacter(request: PlayFabClientModels.GetLeaderboardAroundCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboardAroundCharacter(request: PlayFabClientModels.GetLeaderboardAroundCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked users for the given statistic, centered on the requested player. If PlayFabId is empty or * null will return currently logged in user. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getleaderboardaroundplayer */ - GetLeaderboardAroundPlayer(request: PlayFabClientModels.GetLeaderboardAroundPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboardAroundPlayer(request: PlayFabClientModels.GetLeaderboardAroundPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of all of the user's characters for the given statistic. * https://docs.microsoft.com/rest/api/playfab/client/characters/getleaderboardforusercharacters */ - GetLeaderboardForUserCharacters(request: PlayFabClientModels.GetLeaderboardForUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboardForUserCharacters(request: PlayFabClientModels.GetLeaderboardForUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * For payments flows where the provider requires playfab (the fulfiller) to initiate the transaction, but the client - * completes the rest of the flow. In the Xsolla case, the token returned here will be passed to Xsolla by the client to - * create a cart. Poll GetPurchase using the returned OrderId once you've completed the payment. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ For payments flows where the provider requires playfab (the fulfiller) to initiate the transaction, but the + * client completes the rest of the flow. In the Xsolla case, the token returned here will be passed to Xsolla by the + * client to create a cart. Poll GetPurchase using the returned OrderId once you've completed the payment. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/getpaymenttoken */ - GetPaymentToken(request: PlayFabClientModels.GetPaymentTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPaymentToken(request: PlayFabClientModels.GetPaymentTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets a Photon custom authentication token that can be used to securely join the player into a Photon room. See * https://docs.microsoft.com/gaming/playfab/features/multiplayer/photon/quickstart for more details. * https://docs.microsoft.com/rest/api/playfab/client/authentication/getphotonauthenticationtoken */ - GetPhotonAuthenticationToken(request: PlayFabClientModels.GetPhotonAuthenticationTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPhotonAuthenticationToken(request: PlayFabClientModels.GetPhotonAuthenticationTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves all of the user's different kinds of info. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayercombinedinfo */ - GetPlayerCombinedInfo(request: PlayFabClientModels.GetPlayerCombinedInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerCombinedInfo(request: PlayFabClientModels.GetPlayerCombinedInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves a title-specific custom property value for a player. + * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getplayercustomproperty + */ + GetPlayerCustomProperty(request: PlayFabClientModels.GetPlayerCustomPropertyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the player's profile * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayerprofile */ - GetPlayerProfile(request: PlayFabClientModels.GetPlayerProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerProfile(request: PlayFabClientModels.GetPlayerProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * List all segments that a player currently belongs to at this moment in time. * https://docs.microsoft.com/rest/api/playfab/client/playstream/getplayersegments */ - GetPlayerSegments(request: PlayFabClientModels.GetPlayerSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerSegments(request: PlayFabClientModels.GetPlayerSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the indicated statistics (current version and values for all statistics, if none are specified), for the local * player. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getplayerstatistics */ - GetPlayerStatistics(request: PlayFabClientModels.GetPlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerStatistics(request: PlayFabClientModels.GetPlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the information on the available versions of the specified statistic. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getplayerstatisticversions */ - GetPlayerStatisticVersions(request: PlayFabClientModels.GetPlayerStatisticVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerStatisticVersions(request: PlayFabClientModels.GetPlayerStatisticVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get all tags with a given Namespace (optional) from a player profile. * https://docs.microsoft.com/rest/api/playfab/client/playstream/getplayertags */ - GetPlayerTags(request: PlayFabClientModels.GetPlayerTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerTags(request: PlayFabClientModels.GetPlayerTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets all trades the player has either opened or accepted, optionally filtered by trade status. * https://docs.microsoft.com/rest/api/playfab/client/trading/getplayertrades */ - GetPlayerTrades(request: PlayFabClientModels.GetPlayerTradesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerTrades(request: PlayFabClientModels.GetPlayerTradesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Battle.net account identifiers. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfrombattlenetaccountids + */ + GetPlayFabIDsFromBattleNetAccountIds(request: PlayFabClientModels.GetPlayFabIDsFromBattleNetAccountIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Facebook identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromfacebookids */ - GetPlayFabIDsFromFacebookIDs(request: PlayFabClientModels.GetPlayFabIDsFromFacebookIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromFacebookIDs(request: PlayFabClientModels.GetPlayFabIDsFromFacebookIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Facebook Instant Game identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromfacebookinstantgamesids */ - GetPlayFabIDsFromFacebookInstantGamesIds(request: PlayFabClientModels.GetPlayFabIDsFromFacebookInstantGamesIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromFacebookInstantGamesIds(request: PlayFabClientModels.GetPlayFabIDsFromFacebookInstantGamesIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Game Center identifiers (referenced in the Game Center * Programming Guide as the Player Identifier). * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromgamecenterids */ - GetPlayFabIDsFromGameCenterIDs(request: PlayFabClientModels.GetPlayFabIDsFromGameCenterIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromGameCenterIDs(request: PlayFabClientModels.GetPlayFabIDsFromGameCenterIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of generic service identifiers. A generic identifier is the * service name plus the service-specific ID for the player, as specified by the title when the generic identifier was * added to the player account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromgenericids */ - GetPlayFabIDsFromGenericIDs(request: PlayFabClientModels.GetPlayFabIDsFromGenericIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromGenericIDs(request: PlayFabClientModels.GetPlayFabIDsFromGenericIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Google identifiers. The Google identifiers are the IDs for * the user accounts, available as "id" in the Google+ People API calls. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromgoogleids */ - GetPlayFabIDsFromGoogleIDs(request: PlayFabClientModels.GetPlayFabIDsFromGoogleIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromGoogleIDs(request: PlayFabClientModels.GetPlayFabIDsFromGoogleIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Google Play Games identifiers. The Google Play Games + * identifiers are the IDs for the user accounts, available as "playerId" in the Google Play Games Services - Players API + * calls. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromgoogleplaygamesplayerids + */ + GetPlayFabIDsFromGooglePlayGamesPlayerIDs(request: PlayFabClientModels.GetPlayFabIDsFromGooglePlayGamesPlayerIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Kongregate identifiers. The Kongregate identifiers are the * IDs for the user accounts, available as "user_id" from the Kongregate API methods(ex: * http://developers.kongregate.com/docs/client/getUserId). * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromkongregateids */ - GetPlayFabIDsFromKongregateIDs(request: PlayFabClientModels.GetPlayFabIDsFromKongregateIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromKongregateIDs(request: PlayFabClientModels.GetPlayFabIDsFromKongregateIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Nintendo Service Account identifiers. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromnintendoserviceaccountids + */ + GetPlayFabIDsFromNintendoServiceAccountIds(request: PlayFabClientModels.GetPlayFabIDsFromNintendoServiceAccountIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the unique PlayFab identifiers for the given set of Nintendo Switch identifiers. + * Retrieves the unique PlayFab identifiers for the given set of Nintendo Switch Device identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromnintendoswitchdeviceids */ - GetPlayFabIDsFromNintendoSwitchDeviceIds(request: PlayFabClientModels.GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromNintendoSwitchDeviceIds(request: PlayFabClientModels.GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the unique PlayFab identifiers for the given set of PlayStation Network identifiers. + * Retrieves the unique PlayFab identifiers for the given set of OpenId subject identifiers. A OpenId identifier is the + * service name plus the service-specific ID for the player, as specified by the title when the OpenId identifier was added + * to the player account. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromopenidsubjectidentifiers + */ + GetPlayFabIDsFromOpenIdSubjectIdentifiers(request: PlayFabClientModels.GetPlayFabIDsFromOpenIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of PlayStation :tm: Network identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfrompsnaccountids */ - GetPlayFabIDsFromPSNAccountIDs(request: PlayFabClientModels.GetPlayFabIDsFromPSNAccountIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromPSNAccountIDs(request: PlayFabClientModels.GetPlayFabIDsFromPSNAccountIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of PlayStation :tm: Network identifiers. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfrompsnonlineids + */ + GetPlayFabIDsFromPSNOnlineIDs(request: PlayFabClientModels.GetPlayFabIDsFromPSNOnlineIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Steam identifiers. The Steam identifiers are the profile * IDs for the user accounts, available as SteamId in the Steamworks Community API calls. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromsteamids */ - GetPlayFabIDsFromSteamIDs(request: PlayFabClientModels.GetPlayFabIDsFromSteamIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromSteamIDs(request: PlayFabClientModels.GetPlayFabIDsFromSteamIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Steam identifiers. The Steam identifiers are persona + * names. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromsteamnames + */ + GetPlayFabIDsFromSteamNames(request: PlayFabClientModels.GetPlayFabIDsFromSteamNamesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Twitch identifiers. The Twitch identifiers are the IDs for * the user accounts, available as "_id" from the Twitch API methods (ex: * https://github.com/justintv/Twitch-API/blob/master/v3_resources/users.md#get-usersuser). * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromtwitchids */ - GetPlayFabIDsFromTwitchIDs(request: PlayFabClientModels.GetPlayFabIDsFromTwitchIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromTwitchIDs(request: PlayFabClientModels.GetPlayFabIDsFromTwitchIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of XboxLive identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromxboxliveids */ - GetPlayFabIDsFromXboxLiveIDs(request: PlayFabClientModels.GetPlayFabIDsFromXboxLiveIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromXboxLiveIDs(request: PlayFabClientModels.GetPlayFabIDsFromXboxLiveIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom publisher settings * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/getpublisherdata */ - GetPublisherData(request: PlayFabClientModels.GetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPublisherData(request: PlayFabClientModels.GetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves a purchase along with its current PlayFab status. Returns inventory items from the purchase that are still - * active. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves a purchase along with its current PlayFab status. Returns inventory items from the purchase that + * are still active. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/getpurchase */ - GetPurchase(request: PlayFabClientModels.GetPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPurchase(request: PlayFabClientModels.GetPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves data stored in a shared group object, as well as the list of members in the group. Non-members of the group * may use this to retrieve group data, including membership, but they will not receive data for keys marked as private. @@ -348,98 +392,100 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/getsharedgroupdata */ - GetSharedGroupData(request: PlayFabClientModels.GetSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetSharedGroupData(request: PlayFabClientModels.GetSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the set of items defined for the specified store, including all prices defined + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the set of items defined for the specified store, including all prices defined * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/getstoreitems */ - GetStoreItems(request: PlayFabClientModels.GetStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetStoreItems(request: PlayFabClientModels.GetStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the current server time * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/gettime */ - GetTime(request: PlayFabClientModels.GetTimeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTime(request: PlayFabClientModels.GetTimeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom title settings * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/gettitledata */ - GetTitleData(request: PlayFabClientModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleData(request: PlayFabClientModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title news feed, as configured in the developer portal * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/gettitlenews */ - GetTitleNews(request: PlayFabClientModels.GetTitleNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleNews(request: PlayFabClientModels.GetTitleNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Returns the title's base 64 encoded RSA CSP blob. * https://docs.microsoft.com/rest/api/playfab/client/authentication/gettitlepublickey */ - GetTitlePublicKey(request: PlayFabClientModels.GetTitlePublicKeyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitlePublicKey(request: PlayFabClientModels.GetTitlePublicKeyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the current status of an existing trade. * https://docs.microsoft.com/rest/api/playfab/client/trading/gettradestatus */ - GetTradeStatus(request: PlayFabClientModels.GetTradeStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTradeStatus(request: PlayFabClientModels.GetTradeStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getuserdata */ - GetUserData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the user's current inventory of virtual goods + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the user's current inventory of virtual goods * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/getuserinventory */ - GetUserInventory(request: PlayFabClientModels.GetUserInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserInventory(request: PlayFabClientModels.GetUserInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getuserpublisherdata */ - GetUserPublisherData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getuserpublisherreadonlydata */ - GetUserPublisherReadOnlyData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherReadOnlyData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getuserreadonlydata */ - GetUserReadOnlyData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Requests a challenge from the server to be signed by Windows Hello Passport service to authenticate. - * https://docs.microsoft.com/rest/api/playfab/client/authentication/getwindowshellochallenge - */ - GetWindowsHelloChallenge(request: PlayFabClientModels.GetWindowsHelloChallengeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserReadOnlyData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Grants the specified character type to the user. CharacterIds are not globally unique; characterId must be evaluated * with the parent PlayFabId to guarantee uniqueness. * https://docs.microsoft.com/rest/api/playfab/client/characters/grantcharactertouser */ - GrantCharacterToUser(request: PlayFabClientModels.GrantCharacterToUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GrantCharacterToUser(request: PlayFabClientModels.GrantCharacterToUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Android device identifier to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkandroiddeviceid */ - LinkAndroidDeviceID(request: PlayFabClientModels.LinkAndroidDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkAndroidDeviceID(request: PlayFabClientModels.LinkAndroidDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Apple account associated with the token to the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkapple */ - LinkApple(request: PlayFabClientModels.LinkAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkApple(request: PlayFabClientModels.LinkAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the Battle.net account associated with the token to the user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkbattlenetaccount + */ + LinkBattleNetAccount(request: PlayFabClientModels.LinkBattleNetAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the custom identifier, generated by the title, to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkcustomid */ - LinkCustomID(request: PlayFabClientModels.LinkCustomIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkCustomID(request: PlayFabClientModels.LinkCustomIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Facebook account associated with the provided Facebook access token to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkfacebookaccount */ - LinkFacebookAccount(request: PlayFabClientModels.LinkFacebookAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkFacebookAccount(request: PlayFabClientModels.LinkFacebookAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Facebook Instant Games Id to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkfacebookinstantgamesid */ - LinkFacebookInstantGamesId(request: PlayFabClientModels.LinkFacebookInstantGamesIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkFacebookInstantGamesId(request: PlayFabClientModels.LinkFacebookInstantGamesIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Game Center account associated with the provided Game Center ID to the user's PlayFab account. Logging in with * a Game Center ID is insecure if you do not include the optional PublicKeyUrl, Salt, Signature, and Timestamp parameters @@ -447,80 +493,91 @@ declare module PlayFabClientModule { * page in the PlayFab Game Manager and enabling the 'Require secure authentication only for this app' option. * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkgamecenteraccount */ - LinkGameCenterAccount(request: PlayFabClientModels.LinkGameCenterAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkGameCenterAccount(request: PlayFabClientModels.LinkGameCenterAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the currently signed-in user account to their Google account, using their Google account credentials * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkgoogleaccount */ - LinkGoogleAccount(request: PlayFabClientModels.LinkGoogleAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkGoogleAccount(request: PlayFabClientModels.LinkGoogleAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the currently signed-in user account to their Google Play Games account, using their Google Play Games account + * credentials + * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkgoogleplaygamesservicesaccount + */ + LinkGooglePlayGamesServicesAccount(request: PlayFabClientModels.LinkGooglePlayGamesServicesAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the vendor-specific iOS device identifier to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkiosdeviceid */ - LinkIOSDeviceID(request: PlayFabClientModels.LinkIOSDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkIOSDeviceID(request: PlayFabClientModels.LinkIOSDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Kongregate identifier to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkkongregate */ - LinkKongregate(request: PlayFabClientModels.LinkKongregateAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkKongregate(request: PlayFabClientModels.LinkKongregateAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Nintendo account associated with the token to the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/linknintendoserviceaccount */ - LinkNintendoServiceAccount(request: PlayFabClientModels.LinkNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkNintendoServiceAccount(request: PlayFabClientModels.LinkNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the NintendoSwitchDeviceId to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linknintendoswitchdeviceid */ - LinkNintendoSwitchDeviceId(request: PlayFabClientModels.LinkNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkNintendoSwitchDeviceId(request: PlayFabClientModels.LinkNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links an OpenID Connect account to a user's PlayFab account, based on an existing relationship between a title and an * Open ID Connect provider and the OpenId Connect JWT from that provider. * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkopenidconnect */ - LinkOpenIdConnect(request: PlayFabClientModels.LinkOpenIdConnectRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkOpenIdConnect(request: PlayFabClientModels.LinkOpenIdConnectRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Links the PlayStation Network account associated with the provided access code to the user's PlayFab account + * Links the PlayStation :tm: Network account associated with the provided access code to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkpsnaccount */ - LinkPSNAccount(request: PlayFabClientModels.LinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkPSNAccount(request: PlayFabClientModels.LinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Steam account associated with the provided Steam authentication ticket to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linksteamaccount */ - LinkSteamAccount(request: PlayFabClientModels.LinkSteamAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkSteamAccount(request: PlayFabClientModels.LinkSteamAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Twitch account associated with the token to the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/linktwitch */ - LinkTwitch(request: PlayFabClientModels.LinkTwitchAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Link Windows Hello authentication to the current PlayFab Account - * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkwindowshello - */ - LinkWindowsHello(request: PlayFabClientModels.LinkWindowsHelloAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkTwitch(request: PlayFabClientModels.LinkTwitchAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Xbox Live account associated with the provided access code to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkxboxaccount */ - LinkXboxAccount(request: PlayFabClientModels.LinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkXboxAccount(request: PlayFabClientModels.LinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves title-specific custom property values for a player. + * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/listplayercustomproperties + */ + ListPlayerCustomProperties(request: PlayFabClientModels.ListPlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using the Android device identifier, returning a session identifier that can subsequently be used for * API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithandroiddeviceid */ - LoginWithAndroidDeviceID(request: PlayFabClientModels.LoginWithAndroidDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithAndroidDeviceID(request: PlayFabClientModels.LoginWithAndroidDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs in the user with a Sign in with Apple identity token. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithapple */ - LoginWithApple(request: PlayFabClientModels.LoginWithAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithApple(request: PlayFabClientModels.LoginWithAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Sign in the user with a Battle.net identity token + * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithbattlenet + */ + LoginWithBattleNet(request: PlayFabClientModels.LoginWithBattleNetRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a custom unique identifier generated by the title, returning a session identifier that can * subsequently be used for API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithcustomid */ - LoginWithCustomID(request: PlayFabClientModels.LoginWithCustomIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithCustomID(request: PlayFabClientModels.LoginWithCustomIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user into the PlayFab account, returning a session identifier that can subsequently be used for API calls * which require an authenticated user. Unlike most other login API calls, LoginWithEmailAddress does not permit the @@ -528,19 +585,19 @@ declare module PlayFabClientModule { * RegisterPlayFabUser. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithemailaddress */ - LoginWithEmailAddress(request: PlayFabClientModels.LoginWithEmailAddressRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithEmailAddress(request: PlayFabClientModels.LoginWithEmailAddressRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Facebook access token, returning a session identifier that can subsequently be used for API * calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithfacebook */ - LoginWithFacebook(request: PlayFabClientModels.LoginWithFacebookRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithFacebook(request: PlayFabClientModels.LoginWithFacebookRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Facebook Instant Games ID, returning a session identifier that can subsequently be used for * API calls which require an authenticated user. Requires Facebook Instant Games to be configured. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithfacebookinstantgamesid */ - LoginWithFacebookInstantGamesId(request: PlayFabClientModels.LoginWithFacebookInstantGamesIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithFacebookInstantGamesId(request: PlayFabClientModels.LoginWithFacebookInstantGamesIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using an iOS Game Center player identifier, returning a session identifier that can subsequently be * used for API calls which require an authenticated user. Logging in with a Game Center ID is insecure if you do not @@ -549,40 +606,45 @@ declare module PlayFabClientModule { * enabling the 'Require secure authentication only for this app' option. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithgamecenter */ - LoginWithGameCenter(request: PlayFabClientModels.LoginWithGameCenterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithGameCenter(request: PlayFabClientModels.LoginWithGameCenterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using their Google account credentials * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithgoogleaccount */ - LoginWithGoogleAccount(request: PlayFabClientModels.LoginWithGoogleAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithGoogleAccount(request: PlayFabClientModels.LoginWithGoogleAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Signs the user in using their Google Play Games account credentials + * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithgoogleplaygamesservices + */ + LoginWithGooglePlayGamesServices(request: PlayFabClientModels.LoginWithGooglePlayGamesServicesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using the vendor-specific iOS device identifier, returning a session identifier that can subsequently * be used for API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithiosdeviceid */ - LoginWithIOSDeviceID(request: PlayFabClientModels.LoginWithIOSDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithIOSDeviceID(request: PlayFabClientModels.LoginWithIOSDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Kongregate player account. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithkongregate */ - LoginWithKongregate(request: PlayFabClientModels.LoginWithKongregateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithKongregate(request: PlayFabClientModels.LoginWithKongregateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs in the user with a Nintendo service account token. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithnintendoserviceaccount */ - LoginWithNintendoServiceAccount(request: PlayFabClientModels.LoginWithNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithNintendoServiceAccount(request: PlayFabClientModels.LoginWithNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Nintendo Switch Device ID, returning a session identifier that can subsequently be used for * API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithnintendoswitchdeviceid */ - LoginWithNintendoSwitchDeviceId(request: PlayFabClientModels.LoginWithNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithNintendoSwitchDeviceId(request: PlayFabClientModels.LoginWithNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Logs in a user with an Open ID Connect JWT created by an existing relationship between a title and an Open ID Connect * provider. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithopenidconnect */ - LoginWithOpenIdConnect(request: PlayFabClientModels.LoginWithOpenIdConnectRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithOpenIdConnect(request: PlayFabClientModels.LoginWithOpenIdConnectRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user into the PlayFab account, returning a session identifier that can subsequently be used for API calls * which require an authenticated user. Unlike most other login API calls, LoginWithPlayFab does not permit the creation of @@ -590,107 +652,86 @@ declare module PlayFabClientModule { * RegisterPlayFabUser, or added to existing accounts using AddUsernamePassword. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithplayfab */ - LoginWithPlayFab(request: PlayFabClientModels.LoginWithPlayFabRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithPlayFab(request: PlayFabClientModels.LoginWithPlayFabRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Signs the user in using a PlayStation Network authentication code, returning a session identifier that can subsequently - * be used for API calls which require an authenticated user + * Signs the user in using a PlayStation :tm: Network authentication code, returning a session identifier that can + * subsequently be used for API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithpsn */ - LoginWithPSN(request: PlayFabClientModels.LoginWithPSNRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithPSN(request: PlayFabClientModels.LoginWithPSNRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Steam authentication ticket, returning a session identifier that can subsequently be used for * API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithsteam */ - LoginWithSteam(request: PlayFabClientModels.LoginWithSteamRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithSteam(request: PlayFabClientModels.LoginWithSteamRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Twitch access token. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithtwitch */ - LoginWithTwitch(request: PlayFabClientModels.LoginWithTwitchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Completes the Windows Hello login flow by returning the signed value of the challange from GetWindowsHelloChallenge. - * Windows Hello has a 2 step client to server authentication scheme. Step one is to request from the server a challenge - * string. Step two is to request the user sign the string via Windows Hello and then send the signed value back to the - * server. - * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithwindowshello - */ - LoginWithWindowsHello(request: PlayFabClientModels.LoginWithWindowsHelloRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithTwitch(request: PlayFabClientModels.LoginWithTwitchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Xbox Live Token, returning a session identifier that can subsequently be used for API calls * which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithxbox */ - LoginWithXbox(request: PlayFabClientModels.LoginWithXboxRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Attempts to locate a game session matching the given parameters. If the goal is to match the player into a specific - * active session, only the LobbyId is required. Otherwise, the BuildVersion, GameMode, and Region are all required - * parameters. Note that parameters specified in the search are required (they are not weighting factors). If a slot is - * found in a server instance matching the parameters, the slot will be assigned to that player, removing it from the - * availabe set. In that case, the information on the game session will be returned, otherwise the Status returned will be - * GameNotFound. - * https://docs.microsoft.com/rest/api/playfab/client/matchmaking/matchmake - */ - Matchmake(request: PlayFabClientModels.MatchmakeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithXbox(request: PlayFabClientModels.LoginWithXboxRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Opens a new outstanding trade. Note that a given item instance may only be in one open trade at a time. * https://docs.microsoft.com/rest/api/playfab/client/trading/opentrade */ - OpenTrade(request: PlayFabClientModels.OpenTradeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + OpenTrade(request: PlayFabClientModels.OpenTradeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Selects a payment option for purchase order created via StartPurchase + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Selects a payment option for purchase order created via StartPurchase * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/payforpurchase */ - PayForPurchase(request: PlayFabClientModels.PayForPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + PayForPurchase(request: PlayFabClientModels.PayForPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Buys a single item with virtual currency. You must specify both the virtual currency to use to purchase, as well as what - * the client believes the price to be. This lets the server fail the purchase if the price has changed. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Buys a single item with virtual currency. You must specify both the virtual currency to use to purchase, as + * well as what the client believes the price to be. This lets the server fail the purchase if the price has changed. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/purchaseitem */ - PurchaseItem(request: PlayFabClientModels.PurchaseItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + PurchaseItem(request: PlayFabClientModels.PurchaseItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds the virtual goods associated with the coupon to the user's inventory. Coupons can be generated via the + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Adds the virtual goods associated with the coupon to the user's inventory. Coupons can be generated via the * Economy->Catalogs tab in the PlayFab Game Manager. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/redeemcoupon */ - RedeemCoupon(request: PlayFabClientModels.RedeemCouponRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RedeemCoupon(request: PlayFabClientModels.RedeemCouponRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Uses the supplied OAuth code to refresh the internally cached player PSN auth token + * Uses the supplied OAuth code to refresh the internally cached player PlayStation :tm: Network auth token * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/refreshpsnauthtoken */ - RefreshPSNAuthToken(request: PlayFabClientModels.RefreshPSNAuthTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RefreshPSNAuthToken(request: PlayFabClientModels.RefreshPSNAuthTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Registers the iOS device to receive push notifications * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/registerforiospushnotification */ - RegisterForIOSPushNotification(request: PlayFabClientModels.RegisterForIOSPushNotificationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RegisterForIOSPushNotification(request: PlayFabClientModels.RegisterForIOSPushNotificationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Registers a new Playfab user account, returning a session identifier that can subsequently be used for API calls which - * require an authenticated user. You must supply either a username or an email address. + * require an authenticated user. You must supply a username and an email address. * https://docs.microsoft.com/rest/api/playfab/client/authentication/registerplayfabuser */ - RegisterPlayFabUser(request: PlayFabClientModels.RegisterPlayFabUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Registers a new PlayFab user account using Windows Hello authentication, returning a session ticket that can - * subsequently be used for API calls which require an authenticated user - * https://docs.microsoft.com/rest/api/playfab/client/authentication/registerwithwindowshello - */ - RegisterWithWindowsHello(request: PlayFabClientModels.RegisterWithWindowsHelloRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RegisterPlayFabUser(request: PlayFabClientModels.RegisterPlayFabUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes a contact email from the player's profile. * https://docs.microsoft.com/rest/api/playfab/client/account-management/removecontactemail */ - RemoveContactEmail(request: PlayFabClientModels.RemoveContactEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveContactEmail(request: PlayFabClientModels.RemoveContactEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes a specified user from the friend list of the local user * https://docs.microsoft.com/rest/api/playfab/client/friend-list-management/removefriend */ - RemoveFriend(request: PlayFabClientModels.RemoveFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveFriend(request: PlayFabClientModels.RemoveFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes the specified generic service identifier from the player's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/removegenericid */ - RemoveGenericID(request: PlayFabClientModels.RemoveGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveGenericID(request: PlayFabClientModels.RemoveGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes users from the set of those able to update the shared data and the set of users in the group. Only users in the * group can remove members. If as a result of the call, zero users remain with access, the group and its associated data @@ -698,191 +739,201 @@ declare module PlayFabClientModule { * guide: https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/removesharedgroupmembers */ - RemoveSharedGroupMembers(request: PlayFabClientModels.RemoveSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveSharedGroupMembers(request: PlayFabClientModels.RemoveSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Report player's ad activity * https://docs.microsoft.com/rest/api/playfab/client/advertising/reportadactivity */ - ReportAdActivity(request: PlayFabClientModels.ReportAdActivityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ReportAdActivity(request: PlayFabClientModels.ReportAdActivityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Write a PlayStream event to describe the provided player device information. This API method is not designed to be * called directly by developers. Each PlayFab client SDK will eventually report this information automatically. * https://docs.microsoft.com/rest/api/playfab/client/analytics/reportdeviceinfo */ - ReportDeviceInfo(request: PlayFabClientModels.DeviceInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ReportDeviceInfo(request: PlayFabClientModels.DeviceInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Submit a report for another player (due to bad bahavior, etc.), so that customer service representatives for the title * can take action concerning potentially toxic players. * https://docs.microsoft.com/rest/api/playfab/client/account-management/reportplayer */ - ReportPlayer(request: PlayFabClientModels.ReportPlayerClientRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ReportPlayer(request: PlayFabClientModels.ReportPlayerClientRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Restores all in-app purchases based on the given restore receipt + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Restores all in-app purchases based on the given restore receipt * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/restoreiospurchases */ - RestoreIOSPurchases(request: PlayFabClientModels.RestoreIOSPurchasesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RestoreIOSPurchases(request: PlayFabClientModels.RestoreIOSPurchasesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Reward player's ad activity * https://docs.microsoft.com/rest/api/playfab/client/advertising/rewardadactivity */ - RewardAdActivity(request: PlayFabClientModels.RewardAdActivityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RewardAdActivity(request: PlayFabClientModels.RewardAdActivityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Forces an email to be sent to the registered email address for the user's account, with a link allowing the user to * change the password.If an account recovery email template ID is provided, an email using the custom email template will * be used. * https://docs.microsoft.com/rest/api/playfab/client/account-management/sendaccountrecoveryemail */ - SendAccountRecoveryEmail(request: PlayFabClientModels.SendAccountRecoveryEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SendAccountRecoveryEmail(request: PlayFabClientModels.SendAccountRecoveryEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the tag list for a specified user in the friend list of the local user * https://docs.microsoft.com/rest/api/playfab/client/friend-list-management/setfriendtags */ - SetFriendTags(request: PlayFabClientModels.SetFriendTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetFriendTags(request: PlayFabClientModels.SetFriendTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the player's secret if it is not already set. Player secrets are used to sign API requests. To reset a player's * secret use the Admin or Server API method SetPlayerSecret. * https://docs.microsoft.com/rest/api/playfab/client/authentication/setplayersecret */ - SetPlayerSecret(request: PlayFabClientModels.SetPlayerSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Start a new game server with a given configuration, add the current player and return the connection information. - * https://docs.microsoft.com/rest/api/playfab/client/matchmaking/startgame - */ - StartGame(request: PlayFabClientModels.StartGameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetPlayerSecret(request: PlayFabClientModels.SetPlayerSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Creates an order for a list of items from the title catalog + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Creates an order for a list of items from the title catalog * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/startpurchase */ - StartPurchase(request: PlayFabClientModels.StartPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + StartPurchase(request: PlayFabClientModels.StartPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Decrements the user's balance of the specified virtual currency by the stated amount. It is possible to make a VC - * balance negative with this API. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Decrements the user's balance of the specified virtual currency by the stated amount. It is possible to make + * a VC balance negative with this API. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/subtractuservirtualcurrency */ - SubtractUserVirtualCurrency(request: PlayFabClientModels.SubtractUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SubtractUserVirtualCurrency(request: PlayFabClientModels.SubtractUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Android device identifier from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkandroiddeviceid */ - UnlinkAndroidDeviceID(request: PlayFabClientModels.UnlinkAndroidDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkAndroidDeviceID(request: PlayFabClientModels.UnlinkAndroidDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Apple account from the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkapple */ - UnlinkApple(request: PlayFabClientModels.UnlinkAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkApple(request: PlayFabClientModels.UnlinkAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Battle.net account from the user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkbattlenetaccount + */ + UnlinkBattleNetAccount(request: PlayFabClientModels.UnlinkBattleNetAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related custom identifier from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkcustomid */ - UnlinkCustomID(request: PlayFabClientModels.UnlinkCustomIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkCustomID(request: PlayFabClientModels.UnlinkCustomIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Facebook account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkfacebookaccount */ - UnlinkFacebookAccount(request: PlayFabClientModels.UnlinkFacebookAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkFacebookAccount(request: PlayFabClientModels.UnlinkFacebookAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Facebook Instant Game Ids from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkfacebookinstantgamesid */ - UnlinkFacebookInstantGamesId(request: PlayFabClientModels.UnlinkFacebookInstantGamesIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkFacebookInstantGamesId(request: PlayFabClientModels.UnlinkFacebookInstantGamesIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Game Center account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkgamecenteraccount */ - UnlinkGameCenterAccount(request: PlayFabClientModels.UnlinkGameCenterAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkGameCenterAccount(request: PlayFabClientModels.UnlinkGameCenterAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Google account from the user's PlayFab account * (https://developers.google.com/android/reference/com/google/android/gms/auth/GoogleAuthUtil#public-methods). * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkgoogleaccount */ - UnlinkGoogleAccount(request: PlayFabClientModels.UnlinkGoogleAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkGoogleAccount(request: PlayFabClientModels.UnlinkGoogleAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Google Play Games account from the user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkgoogleplaygamesservicesaccount + */ + UnlinkGooglePlayGamesServicesAccount(request: PlayFabClientModels.UnlinkGooglePlayGamesServicesAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related iOS device identifier from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkiosdeviceid */ - UnlinkIOSDeviceID(request: PlayFabClientModels.UnlinkIOSDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkIOSDeviceID(request: PlayFabClientModels.UnlinkIOSDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Kongregate identifier from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkkongregate */ - UnlinkKongregate(request: PlayFabClientModels.UnlinkKongregateAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkKongregate(request: PlayFabClientModels.UnlinkKongregateAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Nintendo account from the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinknintendoserviceaccount */ - UnlinkNintendoServiceAccount(request: PlayFabClientModels.UnlinkNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkNintendoServiceAccount(request: PlayFabClientModels.UnlinkNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related NintendoSwitchDeviceId from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinknintendoswitchdeviceid */ - UnlinkNintendoSwitchDeviceId(request: PlayFabClientModels.UnlinkNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkNintendoSwitchDeviceId(request: PlayFabClientModels.UnlinkNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks an OpenID Connect account from a user's PlayFab account, based on the connection ID of an existing relationship * between a title and an Open ID Connect provider. * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkopenidconnect */ - UnlinkOpenIdConnect(request: PlayFabClientModels.UnlinkOpenIdConnectRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkOpenIdConnect(request: PlayFabClientModels.UnlinkOpenIdConnectRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Unlinks the related PSN account from the user's PlayFab account + * Unlinks the related PlayStation :tm: Network account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkpsnaccount */ - UnlinkPSNAccount(request: PlayFabClientModels.UnlinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkPSNAccount(request: PlayFabClientModels.UnlinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Steam account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinksteamaccount */ - UnlinkSteamAccount(request: PlayFabClientModels.UnlinkSteamAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkSteamAccount(request: PlayFabClientModels.UnlinkSteamAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Twitch account from the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinktwitch */ - UnlinkTwitch(request: PlayFabClientModels.UnlinkTwitchAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Unlink Windows Hello authentication from the current PlayFab Account - * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkwindowshello - */ - UnlinkWindowsHello(request: PlayFabClientModels.UnlinkWindowsHelloAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkTwitch(request: PlayFabClientModels.UnlinkTwitchAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Xbox Live account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkxboxaccount */ - UnlinkXboxAccount(request: PlayFabClientModels.UnlinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkXboxAccount(request: PlayFabClientModels.UnlinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Opens the specified container, with the specified key (when required), and returns the contents of the opened container. - * If the container (and key when relevant) are consumable (RemainingUses > 0), their RemainingUses will be decremented, - * consistent with the operation of ConsumeItem. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Opens the specified container, with the specified key (when required), and returns the contents of the + * opened container. If the container (and key when relevant) are consumable (RemainingUses > 0), their RemainingUses will + * be decremented, consistent with the operation of ConsumeItem. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/unlockcontainerinstance */ - UnlockContainerInstance(request: PlayFabClientModels.UnlockContainerInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlockContainerInstance(request: PlayFabClientModels.UnlockContainerInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Searches target inventory for an ItemInstance matching the given CatalogItemId, if necessary unlocks it using an - * appropriate key, and returns the contents of the opened container. If the container (and key when relevant) are + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Searches target inventory for an ItemInstance matching the given CatalogItemId, if necessary unlocks it + * using an appropriate key, and returns the contents of the opened container. If the container (and key when relevant) are * consumable (RemainingUses > 0), their RemainingUses will be decremented, consistent with the operation of ConsumeItem. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/unlockcontaineritem */ - UnlockContainerItem(request: PlayFabClientModels.UnlockContainerItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlockContainerItem(request: PlayFabClientModels.UnlockContainerItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Update the avatar URL of the player * https://docs.microsoft.com/rest/api/playfab/client/account-management/updateavatarurl */ - UpdateAvatarUrl(request: PlayFabClientModels.UpdateAvatarUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateAvatarUrl(request: PlayFabClientModels.UpdateAvatarUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates and updates the title-specific custom data for the user's character which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/character-data/updatecharacterdata */ - UpdateCharacterData(request: PlayFabClientModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCharacterData(request: PlayFabClientModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the values of the specified title-specific statistics for the specific character. By default, clients are not * permitted to update statistics. Developers may override this setting in the Game Manager > Settings > API Features. * https://docs.microsoft.com/rest/api/playfab/client/characters/updatecharacterstatistics */ - UpdateCharacterStatistics(request: PlayFabClientModels.UpdateCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCharacterStatistics(request: PlayFabClientModels.UpdateCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Updates the title-specific custom property values for a player + * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/updateplayercustomproperties + */ + UpdatePlayerCustomProperties(request: PlayFabClientModels.UpdatePlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the values of the specified title-specific statistics for the user. By default, clients are not permitted to * update statistics. Developers may override this setting in the Game Manager > Settings > API Features. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/updateplayerstatistics */ - UpdatePlayerStatistics(request: PlayFabClientModels.UpdatePlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdatePlayerStatistics(request: PlayFabClientModels.UpdatePlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds, updates, and removes data keys for a shared group object. If the permission is set to Public, all fields updated * or added in this call will be readable by users not in the group. By default, data permissions are set to Private. @@ -891,60 +942,64 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/updatesharedgroupdata */ - UpdateSharedGroupData(request: PlayFabClientModels.UpdateSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateSharedGroupData(request: PlayFabClientModels.UpdateSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates and updates the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/updateuserdata */ - UpdateUserData(request: PlayFabClientModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserData(request: PlayFabClientModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates and updates the publisher-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/updateuserpublisherdata */ - UpdateUserPublisherData(request: PlayFabClientModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserPublisherData(request: PlayFabClientModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title specific display name for the user * https://docs.microsoft.com/rest/api/playfab/client/account-management/updateusertitledisplayname */ - UpdateUserTitleDisplayName(request: PlayFabClientModels.UpdateUserTitleDisplayNameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserTitleDisplayName(request: PlayFabClientModels.UpdateUserTitleDisplayNameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Validates with Amazon that the receipt for an Amazon App Store in-app purchase is valid and that it matches the - * purchased catalog item + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Validates with Amazon that the receipt for an Amazon App Store in-app purchase is valid and that it matches + * the purchased catalog item * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/validateamazoniapreceipt */ - ValidateAmazonIAPReceipt(request: PlayFabClientModels.ValidateAmazonReceiptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ValidateAmazonIAPReceipt(request: PlayFabClientModels.ValidateAmazonReceiptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Validates a Google Play purchase and gives the corresponding item to the player. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Validates a Google Play purchase and gives the corresponding item to the player. * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/validategoogleplaypurchase */ - ValidateGooglePlayPurchase(request: PlayFabClientModels.ValidateGooglePlayPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ValidateGooglePlayPurchase(request: PlayFabClientModels.ValidateGooglePlayPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Validates with the Apple store that the receipt for an iOS in-app purchase is valid and that it matches the purchased - * catalog item + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Validates with the Apple store that the receipt for an iOS in-app purchase is valid and that it matches the + * purchased catalog item * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/validateiosreceipt */ - ValidateIOSReceipt(request: PlayFabClientModels.ValidateIOSReceiptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ValidateIOSReceipt(request: PlayFabClientModels.ValidateIOSReceiptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Validates with Windows that the receipt for an Windows App Store in-app purchase is valid and that it matches the - * purchased catalog item + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Validates with Windows that the receipt for an Windows App Store in-app purchase is valid and that it + * matches the purchased catalog item * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/validatewindowsstorereceipt */ - ValidateWindowsStoreReceipt(request: PlayFabClientModels.ValidateWindowsReceiptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ValidateWindowsStoreReceipt(request: PlayFabClientModels.ValidateWindowsReceiptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Writes a character-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/client/analytics/writecharacterevent */ - WriteCharacterEvent(request: PlayFabClientModels.WriteClientCharacterEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WriteCharacterEvent(request: PlayFabClientModels.WriteClientCharacterEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Writes a player-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/client/analytics/writeplayerevent */ - WritePlayerEvent(request: PlayFabClientModels.WriteClientPlayerEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WritePlayerEvent(request: PlayFabClientModels.WriteClientPlayerEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Writes a title-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/client/analytics/writetitleevent */ - WriteTitleEvent(request: PlayFabClientModels.WriteTitleEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WriteTitleEvent(request: PlayFabClientModels.WriteTitleEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } @@ -970,6 +1025,7 @@ declare module PlayFabClientModels { } type AdActivity = "Opened" + | "Closed" | "Start" | "End"; @@ -1135,6 +1191,14 @@ declare module PlayFabClientModels { } + export interface BattleNetAccountPlayFabIdPair { + /** Unique Battle.net account identifier for a user. */ + BattleNetAccountId?: string; + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Battle.net account identifier. */ + PlayFabId?: string; + + } + export interface CancelTradeRequest extends PlayFabModule.IPlayFabRequestCommon { /** Trade identifier. */ TradeId: string; @@ -1310,20 +1374,10 @@ declare module PlayFabClientModels { } type CloudScriptRevisionOption = "Live" + | "Latest" | "Specific"; - export interface CollectionFilter { - /** List of Exclude rules, with any of which if a collection matches, it is excluded by the filter. */ - Excludes?: Container_Dictionary_String_String[]; - /** - * List of Include rules, with any of which if a collection matches, it is included by the filter, unless it is excluded by - * one of the Exclude rule - */ - Includes?: Container_Dictionary_String_String[]; - - } - export interface ConfirmPurchaseRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -1399,7 +1453,7 @@ declare module PlayFabClientModels { CatalogVersion?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Id of the PSN service label to consume entitlements from */ + /** Id of the PlayStation :tm: Network service label to consume entitlements from */ ServiceLabel: number; } @@ -1436,21 +1490,18 @@ declare module PlayFabClientModels { } - export interface Container_Dictionary_String_String { - /** Content of data */ - Data?: { [key: string]: string | null }; - - } - type ContinentCode = "AF" + | "AN" | "AS" | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" + | "AX" | "AL" | "DZ" @@ -1698,7 +1749,8 @@ declare module PlayFabClientModels { | "EH" | "YE" | "ZM" - | "ZW"; + | "ZW" + | "Unknown"; export interface CreateSharedGroupRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique identifier for the shared group (a random identifier will be assigned, if one is not specified). */ @@ -1713,6 +1765,7 @@ declare module PlayFabClientModels { } type Currency = "AED" + | "AFN" | "ALL" | "AMD" @@ -1875,27 +1928,43 @@ declare module PlayFabClientModels { | "ZMW" | "ZWD"; - export interface CurrentGamesRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Build to match against. */ - BuildVersion?: string; - /** Game mode to look for. */ - GameMode?: string; - /** Region to check for Game Server Instances. */ - Region?: string; - /** Statistic name to find statistic-based matches. */ - StatisticName?: string; - /** Filter to include and/or exclude Game Server Instances associated with certain tags. */ - TagFilter?: CollectionFilter; + export interface CustomPropertyDetails { + /** The custom property's name. */ + Name?: string; + /** The custom property's value. */ + Value?: any; + + } + + export interface DeletedPropertyDetails { + /** The name of the property which was requested to be deleted. */ + Name?: string; + /** Indicates whether or not the property was deleted. If false, no property with that name existed. */ + WasDeleted: boolean; + + } + + export interface DeletePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Optional field used for concurrency control. One can ensure that the delete operation will only be performed if the + * player's properties have not been updated by any other clients since the last version. + */ + ExpectedPropertiesVersion?: number; + /** A list of property names denoting which properties should be deleted. */ + PropertyNames: string[]; } - export interface CurrentGamesResult extends PlayFabModule.IPlayFabResultCommon { - /** number of games running */ - GameCount: number; - /** array of games found */ - Games?: GameInfo[]; - /** total number of players across all servers */ - PlayerCount: number; + export interface DeletePlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** The list of properties requested to be deleted. */ + DeletedProperties?: DeletedPropertyDetails[]; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; } @@ -1906,6 +1975,7 @@ declare module PlayFabClientModels { } type EmailVerificationStatus = "Unverified" + | "Pending" | "Confirmed"; @@ -1996,6 +2066,14 @@ declare module PlayFabClientModels { } + type ExternalFriendSources = "None" + + | "Steam" + | "Facebook" + | "Xbox" + | "Psn" + | "All"; + export interface FacebookInstantGamesPlayFabIdPair { /** Unique Facebook Instant Games identifier for a user. */ FacebookInstantGamesId?: string; @@ -2013,17 +2091,23 @@ declare module PlayFabClientModels { } export interface FriendInfo { - /** Available Facebook information (if the user and PlayFab friend are also connected in Facebook). */ + /** Available Facebook information (if the user and connected Facebook friend both have PlayFab Accounts in the same title). */ FacebookInfo?: UserFacebookInfo; /** PlayFab unique identifier for this friend. */ FriendPlayFabId?: string; - /** Available Game Center information (if the user and PlayFab friend are also connected in Game Center). */ + /** + * Available Game Center information (if the user and connected Game Center friend both have PlayFab Accounts in the same + * title). + */ GameCenterInfo?: UserGameCenterInfo; /** The profile of the user, if requested. */ Profile?: PlayerProfileModel; - /** Available PSN information, if the user and PlayFab friend are both connected to PSN. */ + /** + * Available PlayStation :tm: Network information, if the user connected PlayStation :tm Network friend both have PlayFab + * Accounts in the same title. + */ PSNInfo?: UserPsnInfo; - /** Available Steam information (if the user and PlayFab friend are also connected in Steam). */ + /** Available Steam information (if the user and connected Steam friend both have PlayFab Accounts in the same title). */ SteamInfo?: UserSteamInfo; /** Tags which have been associated with this friend. */ Tags?: string[]; @@ -2031,7 +2115,7 @@ declare module PlayFabClientModels { TitleDisplayName?: string; /** PlayFab unique username for this friend. */ Username?: string; - /** Available Xbox information, if the user and PlayFab friend are both connected to Xbox Live. */ + /** Available Xbox information, (if the user and connected Xbox Live friend both have PlayFab Accounts in the same title). */ XboxInfo?: UserXboxInfo; } @@ -2044,62 +2128,6 @@ declare module PlayFabClientModels { } - export interface GameInfo { - /** build version this server is running */ - BuildVersion?: string; - /** game mode this server is running */ - GameMode?: string; - /** game session custom data */ - GameServerData?: string; - /** game specific string denoting server configuration */ - GameServerStateEnum?: string; - /** last heartbeat of the game server instance, used in external game server provider mode */ - LastHeartbeat?: string; - /** unique lobby identifier for this game server */ - LobbyID?: string; - /** maximum players this server can support */ - MaxPlayers?: number; - /** array of current player IDs on this server */ - PlayerUserIds?: string[]; - /** region to which this server is associated */ - Region?: string; - /** duration in seconds this server has been running */ - RunTime: number; - /** IPV4 address of the server */ - ServerIPV4Address?: string; - /** IPV6 address of the server */ - ServerIPV6Address?: string; - /** port number to use for non-http communications with the server */ - ServerPort?: number; - /** Public DNS name (if any) of the server */ - ServerPublicDNSName?: string; - /** stastic used to match this game in player statistic matchmaking */ - StatisticName?: string; - /** game session tags */ - Tags?: { [key: string]: string | null }; - - } - - type GameInstanceState = "Open" - | "Closed"; - - export interface GameServerRegionsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** version of game server for which stats are being requested */ - BuildVersion: string; - /** - * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a - * title has been selected. - */ - TitleId?: string; - - } - - export interface GameServerRegionsResult extends PlayFabModule.IPlayFabResultCommon { - /** array of regions found matching the request parameters */ - Regions?: RegionInfo[]; - - } - export interface GenericPlayFabIdPair { /** Unique generic service identifier for a user. */ GenericId?: GenericServiceId; @@ -2217,8 +2245,6 @@ declare module PlayFabClientModels { } export interface GetCharacterLeaderboardRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Optional character type on which to filter the leaderboard entries. */ - CharacterType?: string; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** First entry in the leaderboard to be retrieved. */ @@ -2268,10 +2294,11 @@ declare module PlayFabClientModels { export interface GetFriendLeaderboardAroundPlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Indicates whether Facebook friends should be included in the response. Default is true. */ - IncludeFacebookFriends?: boolean; - /** Indicates whether Steam service friends should be included in the response. Default is true. */ - IncludeSteamFriends?: boolean; + /** + * Indicates which other platforms' friends should be included in the response. In HTTP, it is represented as a + * comma-separated list of platforms. + */ + ExternalPlatformFriends?: string; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** PlayFab unique identifier of the user to center the leaderboard around. If null will center on the logged in user. */ @@ -2304,10 +2331,11 @@ declare module PlayFabClientModels { export interface GetFriendLeaderboardRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Indicates whether Facebook friends should be included in the response. Default is true. */ - IncludeFacebookFriends?: boolean; - /** Indicates whether Steam service friends should be included in the response. Default is true. */ - IncludeSteamFriends?: boolean; + /** + * Indicates which other platforms' friends should be included in the response. In HTTP, it is represented as a + * comma-separated list of platforms. + */ + ExternalPlatformFriends?: string; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** @@ -2330,17 +2358,21 @@ declare module PlayFabClientModels { export interface GetFriendsListRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Indicates whether Facebook friends should be included in the response. Default is true. */ - IncludeFacebookFriends?: boolean; - /** Indicates whether Steam service friends should be included in the response. Default is true. */ - IncludeSteamFriends?: boolean; + /** + * Indicates which other platforms' friends should be included in the response. In HTTP, it is represented as a + * comma-separated list of platforms. + */ + ExternalPlatformFriends?: string; /** * If non-null, this determines which properties of the resulting player profiles to return. For API calls from the client, * only the allowed client profile properties for the title may be requested. These allowed properties are configured in * the Game Manager "Client Profile Options" tab in the "Settings" section. */ ProfileConstraints?: PlayerProfileViewConstraints; - /** Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. */ + /** + * Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. When provided, all Xbox Live + * users the caller is following are included regardless of whether they follow the caller back. + */ XboxToken?: string; } @@ -2354,8 +2386,6 @@ declare module PlayFabClientModels { export interface GetLeaderboardAroundCharacterRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID for a specific character on which to center the leaderboard. */ CharacterId: string; - /** Optional character type on which to filter the leaderboard entries. */ - CharacterType?: string; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** Unique identifier for the title-specific statistic for the leaderboard. */ @@ -2400,8 +2430,6 @@ declare module PlayFabClientModels { } export interface GetLeaderboardForUsersCharactersRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Maximum number of entries to retrieve. */ - MaxResultsCount: number; /** Unique identifier for the title-specific statistic for the leaderboard. */ StatisticName: string; @@ -2557,6 +2585,23 @@ declare module PlayFabClientModels { } + export interface GetPlayerCustomPropertyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Specific property name to search for in the player's properties. */ + PropertyName: string; + + } + + export interface GetPlayerCustomPropertyResult extends PlayFabModule.IPlayFabResultCommon { + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + /** Player specific property and its corresponding value. */ + Property?: CustomPropertyDetails; + + } + export interface GetPlayerProfileRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -2655,8 +2700,26 @@ declare module PlayFabClientModels { } + export interface GetPlayFabIDsFromBattleNetAccountIdsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Battle.net account identifiers for which the title needs to get PlayFab identifiers. The array cannot + * exceed 10 in length. + */ + BattleNetAccountIds: string[]; + + } + + export interface GetPlayFabIDsFromBattleNetAccountIdsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Battle.net account identifiers to PlayFab identifiers. */ + Data?: BattleNetAccountPlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromFacebookIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Facebook identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Facebook identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed 25 in + * length. + */ FacebookIDs: string[]; } @@ -2668,7 +2731,10 @@ declare module PlayFabClientModels { } export interface GetPlayFabIDsFromFacebookInstantGamesIdsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Facebook Instant Games identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Facebook Instant Games identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ FacebookInstantGamesIds: string[]; } @@ -2680,7 +2746,10 @@ declare module PlayFabClientModels { } export interface GetPlayFabIDsFromGameCenterIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Game Center identifiers (the Player Identifier) for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Game Center identifiers (the Player Identifier) for which the title needs to get PlayFab identifiers. + * The array cannot exceed 25 in length. + */ GameCenterIDs: string[]; } @@ -2707,7 +2776,10 @@ declare module PlayFabClientModels { } export interface GetPlayFabIDsFromGoogleIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Google identifiers (Google+ user IDs) for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Google identifiers (Google+ user IDs) for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ GoogleIDs: string[]; } @@ -2718,8 +2790,26 @@ declare module PlayFabClientModels { } + export interface GetPlayFabIDsFromGooglePlayGamesPlayerIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Google Play Games identifiers (Google+ user IDs) for which the title needs to get PlayFab identifiers. + * The array cannot exceed 25 in length. + */ + GooglePlayGamesPlayerIDs: string[]; + + } + + export interface GetPlayFabIDsFromGooglePlayGamesPlayerIDsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Google Play Games identifiers to PlayFab identifiers. */ + Data?: GooglePlayGamesPlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromKongregateIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Kongregate identifiers (Kongregate's user_id) for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Kongregate identifiers (Kongregate's user_id) for which the title needs to get PlayFab identifiers. The + * array cannot exceed 25 in length. + */ KongregateIDs: string[]; } @@ -2730,8 +2820,26 @@ declare module PlayFabClientModels { } + export interface GetPlayFabIDsFromNintendoServiceAccountIdsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Nintendo Switch Account identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ + NintendoAccountIds: string[]; + + } + + export interface GetPlayFabIDsFromNintendoServiceAccountIdsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Nintendo Switch Service Account identifiers to PlayFab identifiers. */ + Data?: NintendoServiceAccountPlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Nintendo Switch Device identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Nintendo Switch Device identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ NintendoSwitchDeviceIds: string[]; } @@ -2742,22 +2850,60 @@ declare module PlayFabClientModels { } + export interface GetPlayFabIDsFromOpenIdsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique OpenId Connect identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed + * 10 in length. + */ + OpenIdSubjectIdentifiers: OpenIdSubjectIdentifier[]; + + } + + export interface GetPlayFabIDsFromOpenIdsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of OpenId Connect identifiers to PlayFab identifiers. */ + Data?: OpenIdSubjectIdentifierPlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromPSNAccountIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Id of the PSN issuer environment. If null, defaults to production environment. */ + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ IssuerId?: number; - /** Array of unique PlayStation Network identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique PlayStation :tm: Network identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ PSNAccountIDs: string[]; } export interface GetPlayFabIDsFromPSNAccountIDsResult extends PlayFabModule.IPlayFabResultCommon { - /** Mapping of PlayStation Network identifiers to PlayFab identifiers. */ + /** Mapping of PlayStation :tm: Network identifiers to PlayFab identifiers. */ Data?: PSNAccountPlayFabIdPair[]; } + export interface GetPlayFabIDsFromPSNOnlineIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ + IssuerId?: number; + /** + * Array of unique PlayStation :tm: Network identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ + PSNOnlineIDs: string[]; + + } + + export interface GetPlayFabIDsFromPSNOnlineIDsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of PlayStation :tm: Network identifiers to PlayFab identifiers. */ + Data?: PSNOnlinePlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromSteamIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Steam identifiers (Steam profile IDs) for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Steam identifiers (Steam profile IDs) for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ SteamStringIDs?: string[]; } @@ -2768,8 +2914,26 @@ declare module PlayFabClientModels { } + export interface GetPlayFabIDsFromSteamNamesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Steam identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed 25 in + * length. + */ + SteamNames: string[]; + + } + + export interface GetPlayFabIDsFromSteamNamesResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Steam identifiers to PlayFab identifiers. */ + Data?: SteamNamePlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromTwitchIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Twitch identifiers (Twitch's _id) for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Twitch identifiers (Twitch's _id) for which the title needs to get PlayFab identifiers. The array cannot + * exceed 25 in length. + */ TwitchIds: string[]; } @@ -2783,13 +2947,16 @@ declare module PlayFabClientModels { export interface GetPlayFabIDsFromXboxLiveIDsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The ID of Xbox Live sandbox. */ Sandbox?: string; - /** Array of unique Xbox Live account identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Xbox Live account identifiers for which the title needs to get PlayFab identifiers. The array cannot + * exceed 25 in length. + */ XboxLiveAccountIDs: string[]; } export interface GetPlayFabIDsFromXboxLiveIDsResult extends PlayFabModule.IPlayFabResultCommon { - /** Mapping of PlayStation Network identifiers to PlayFab identifiers. */ + /** Mapping of Xbox Live identifiers to PlayFab identifiers. */ Data?: XboxLiveAccountPlayFabIdPair[]; } @@ -2992,23 +3159,6 @@ declare module PlayFabClientModels { } - export interface GetWindowsHelloChallengeRequest extends PlayFabModule.IPlayFabRequestCommon { - /** SHA256 hash of the PublicKey generated by Windows Hello. */ - PublicKeyHint: string; - /** - * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a - * title has been selected. - */ - TitleId: string; - - } - - export interface GetWindowsHelloChallengeResponse extends PlayFabModule.IPlayFabResultCommon { - /** Server generated challenge to be signed by the user. */ - Challenge?: string; - - } - export interface GooglePlayFabIdPair { /** Unique Google identifier for a user. */ GoogleId?: string; @@ -3017,6 +3167,14 @@ declare module PlayFabClientModels { } + export interface GooglePlayGamesPlayFabIdPair { + /** Unique Google Play Games identifier for a user. */ + GooglePlayGamesPlayerId?: string; + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Google Play Games identifier. */ + PlayFabId?: string; + + } + export interface GrantCharacterToUserRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version from which items are to be granted. */ CatalogVersion?: string; @@ -3133,6 +3291,16 @@ declare module PlayFabClientModels { } + export interface LinkBattleNetAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to a specific Battle.net account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** The JSON Web Token (JWT) returned by Battle.net after login */ + IdentityToken: string; + + } + export interface LinkCustomIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** Custom unique identifier for the user, generated by the title. */ CustomId: string; @@ -3161,7 +3329,9 @@ declare module PlayFabClientModels { export interface LinkFacebookAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique identifier from Facebook for the user. */ - AccessToken: string; + AccessToken?: string; + /** Token used for limited login authentication. */ + AuthenticationToken?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** If another user is already linked to the account, unlink the other user and re-link. */ @@ -3190,7 +3360,10 @@ declare module PlayFabClientModels { export interface LinkGameCenterAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** If another user is already linked to the account, unlink the other user and re-link. */ + /** + * If another user is already linked to the account, unlink the other user and re-link. If the current user is already + * linked, link both accounts + */ ForceLink?: boolean; /** Game Center identifier for the player account to be linked. */ GameCenterId: string; @@ -3215,7 +3388,10 @@ declare module PlayFabClientModels { export interface LinkGoogleAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** If another user is already linked to the account, unlink the other user and re-link. */ + /** + * If another user is already linked to the account, unlink the other user and re-link. If the current user is already + * linked, link both accounts + */ ForceLink?: boolean; /** * Server authentication code obtained on the client by calling getServerAuthCode() @@ -3229,6 +3405,26 @@ declare module PlayFabClientModels { } + export interface LinkGooglePlayGamesServicesAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * If another user is already linked to the account, unlink the other user and re-link. If the current user is already + * linked, link both accounts + */ + ForceLink?: boolean; + /** + * OAuth 2.0 server authentication code obtained on the client by calling the requestServerSideAccess() + * (https://developers.google.com/games/services/android/signin) Google Play Games client API. + */ + ServerAuthCode: string; + + } + + export interface LinkGooglePlayGamesServicesAccountResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface LinkIOSDeviceIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -3306,15 +3502,15 @@ declare module PlayFabClientModels { } export interface LinkPSNAccountRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Authentication code provided by the PlayStation Network. */ + /** Authentication code provided by the PlayStation :tm: Network. */ AuthCode: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; - /** Id of the PSN issuer environment. If null, defaults to production environment. */ + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ IssuerId?: number; - /** Redirect URI supplied to PSN when requesting an auth code */ + /** Redirect URI supplied to PlayStation :tm: Network when requesting an auth code */ RedirectUri: string; } @@ -3333,6 +3529,11 @@ declare module PlayFabClientModels { * 0x08 should become "08"). */ SteamTicket: string; + /** + * True if ticket was generated using ISteamUser::GetAuthTicketForWebAPI() using "AzurePlayFab" as the identity string. + * False if the ticket was generated with ISteamUser::GetAuthSessionTicket(). + */ + TicketIsServiceSpecific?: boolean; } @@ -3354,35 +3555,32 @@ declare module PlayFabClientModels { } - export interface LinkWindowsHelloAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + export interface LinkXboxAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Device name. */ - DeviceName?: string; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; - /** PublicKey generated by Windows Hello. */ - PublicKey: string; - /** Player's user named used by Windows Hello. */ - UserName: string; + /** Token provided by the Xbox Live SDK/XDK method GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). */ + XboxToken: string; } - export interface LinkWindowsHelloAccountResponse extends PlayFabModule.IPlayFabResultCommon { + export interface LinkXboxAccountResult extends PlayFabModule.IPlayFabResultCommon { } - export interface LinkXboxAccountRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** If another user is already linked to the account, unlink the other user and re-link. */ - ForceLink?: boolean; - /** Token provided by the Xbox Live SDK/XDK method GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). */ - XboxToken: string; + export interface ListPlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { } - export interface LinkXboxAccountResult extends PlayFabModule.IPlayFabResultCommon { + export interface ListPlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** Player specific properties and their corresponding values for this title. */ + Properties?: CustomPropertyDetails[]; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; } @@ -3413,6 +3611,7 @@ declare module PlayFabClientModels { } type LoginIdentityProvider = "Unknown" + | "PlayFab" | "Custom" | "GameCenter" @@ -3432,7 +3631,11 @@ declare module PlayFabClientModels { | "FacebookInstantGames" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface LoginResult extends PlayFabModule.IPlayFabResultCommon { /** @@ -3444,7 +3647,7 @@ declare module PlayFabClientModels { InfoResultPayload?: GetPlayerCombinedInfoResultPayload; /** The time of this user's previous login. If there was no previous login, then it's DateTime.MinValue */ LastLoginTime?: string; - /** True if the account was newly created on this login. */ + /** True if the master_player_account was newly created on this login. */ NewlyCreated: boolean; /** Player's unique PlayFabId. */ PlayFabId?: string; @@ -3466,13 +3669,13 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Specific Operating System version for the user's device. */ OS?: string; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3487,16 +3690,38 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** * The JSON Web token (JWT) returned by Apple after login. Represented as the identityToken field in the authorization - * credential payload. + * credential payload. If you choose to ignore the expiration date for identity tokens, you will receive an NotAuthorized + * error if Apple rotates the signing key. In this case, users have to login to provide a fresh identity token. + */ + IdentityToken: string; + /** Flags for which pieces of info to return for the user. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + /** Player secret that is used to verify API request signatures. */ + PlayerSecret?: string; + /** + * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a + * title has been selected. */ + TitleId?: string; + + } + + export interface LoginWithBattleNetRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Automatically create a PlayFab account if one is not currently linked to this ID. */ + CreateAccount?: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ + EncryptedRequest?: string; + /** The JSON Web Token (JWT) returned by Battle.net after login */ IdentityToken: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3513,11 +3738,11 @@ declare module PlayFabClientModels { CustomId?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3549,13 +3774,13 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Facebook Instant Games signature for the user. */ FacebookInstantGamesSignature: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3567,16 +3792,18 @@ declare module PlayFabClientModels { export interface LoginWithFacebookRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique identifier from Facebook for the user. */ - AccessToken: string; + AccessToken?: string; + /** Token used for limited login authentication. */ + AuthenticationToken?: string; /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3591,13 +3818,13 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Unique Game Center player id. */ PlayerId?: string; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** The URL for the public encryption key that will be used to verify the signature. */ PublicKeyUrl?: string; @@ -3623,17 +3850,43 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * OAuth 2.0 server authentication code obtained on the client by calling the getServerAuthCode() * (https://developers.google.com/identity/sign-in/android/offline-access) Google client API. */ ServerAuthCode?: string; + /** Optional boolean to opt out of setting the MPA email when creating a Google account, defaults to true. */ + SetEmail?: boolean; + /** + * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a + * title has been selected. + */ + TitleId?: string; + + } + + export interface LoginWithGooglePlayGamesServicesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Automatically create a PlayFab account if one is not currently linked to this ID. */ + CreateAccount?: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ + EncryptedRequest?: string; + /** Flags for which pieces of info to return for the user. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + /** Player secret that is used to verify API request signatures. */ + PlayerSecret?: string; + /** + * OAuth 2.0 server authentication code obtained on the client by calling the requestServerSideAccess() + * (https://developers.google.com/games/services/android/signin) Google Play Games client API. + */ + ServerAuthCode?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. @@ -3651,13 +3904,13 @@ declare module PlayFabClientModels { DeviceId?: string; /** Specific model of the user's device. */ DeviceModel?: string; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Specific Operating System version for the user's device. */ OS?: string; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3674,13 +3927,13 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Numeric user ID assigned by Kongregate */ KongregateId?: string; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3695,13 +3948,13 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** The JSON Web token (JWT) returned by Nintendo after login. */ IdentityToken: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3716,13 +3969,13 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Nintendo Switch unique identifier for the user's device. */ NintendoSwitchDeviceId?: string; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3739,7 +3992,7 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** * The JSON Web token (JWT) returned by the identity provider after login. Represented as the id_token field in the @@ -3748,7 +4001,7 @@ declare module PlayFabClientModels { IdToken: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3776,21 +4029,21 @@ declare module PlayFabClientModels { } export interface LoginWithPSNRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Auth code provided by the PSN OAuth provider. */ + /** Auth code provided by the PlayStation :tm: Network OAuth provider. */ AuthCode?: string; /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Id of the PSN issuer environment. If null, defaults to production environment. */ + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ IssuerId?: number; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; - /** Redirect URI supplied to PSN when requesting an auth code */ + /** Redirect URI supplied to PlayStation :tm: Network when requesting an auth code */ RedirectUri?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3805,17 +4058,22 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Authentication token for the user, returned as a byte array from Steam, and converted to a string (for example, the byte * 0x08 should become "08"). */ SteamTicket?: string; + /** + * True if ticket was generated using ISteamUser::GetAuthTicketForWebAPI() using "AzurePlayFab" as the identity string. + * False if the ticket was generated with ISteamUser::GetAuthSessionTicket(). + */ + TicketIsServiceSpecific?: boolean; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. @@ -3831,11 +4089,11 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3845,33 +4103,16 @@ declare module PlayFabClientModels { } - export interface LoginWithWindowsHelloRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The signed response from the user for the Challenge. */ - ChallengeSignature: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Flags for which pieces of info to return for the user. */ - InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** SHA256 hash of the PublicKey generated by Windows Hello. */ - PublicKeyHint: string; - /** - * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a - * title has been selected. - */ - TitleId?: string; - - } - export interface LoginWithXboxRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3892,56 +4133,6 @@ declare module PlayFabClientModels { } - export interface MatchmakeRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Build version to match against. [Note: Required if LobbyId is not specified] */ - BuildVersion?: string; - /** Character to use for stats based matching. Leave null to use account stats. */ - CharacterId?: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Game mode to match make against. [Note: Required if LobbyId is not specified] */ - GameMode?: string; - /** Lobby identifier to match make against. This is used to select a specific Game Server Instance. */ - LobbyId?: string; - /** Region to match make against. [Note: Required if LobbyId is not specified] */ - Region?: string; - /** Start a game session if one with an open slot is not found. Defaults to true. */ - StartNewIfNoneFound?: boolean; - /** Player statistic to use in finding a match. May be null for no stat-based matching. */ - StatisticName?: string; - /** Filter to include and/or exclude Game Server Instances associated with certain Tags */ - TagFilter?: CollectionFilter; - - } - - export interface MatchmakeResult extends PlayFabModule.IPlayFabResultCommon { - /** timestamp for when the server will expire, if applicable */ - Expires?: string; - /** unique lobby identifier of the server matched */ - LobbyID?: string; - /** time in milliseconds the application is configured to wait on matchmaking results */ - PollWaitTimeMS?: number; - /** IPV4 address of the server */ - ServerIPV4Address?: string; - /** IPV6 address of the server */ - ServerIPV6Address?: string; - /** port number to use for non-http communications with the server */ - ServerPort?: number; - /** Public DNS name (if any) of the server */ - ServerPublicDNSName?: string; - /** result of match making process */ - Status?: string; - /** server authorization ticket (used by RedeemMatchmakerTicket to validate user insertion into the game) */ - Ticket?: string; - - } - - type MatchmakeStatus = "Complete" - | "Waiting" - | "GameNotFound" - | "NoAvailableSlots" - | "SessionClosed"; - export interface MembershipModel { /** Whether this membership is active. That is, whether the MembershipExpiration time has been reached. */ IsActive: boolean; @@ -3995,6 +4186,17 @@ declare module PlayFabClientModels { } + export interface NintendoServiceAccountPlayFabIdPair { + /** Unique Nintendo Switch Service Account identifier for a user. */ + NintendoServiceAccountId?: string; + /** + * Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Nintendo Switch Service Account + * identifier. + */ + PlayFabId?: string; + + } + export interface NintendoSwitchPlayFabIdPair { /** Unique Nintendo Switch Device identifier for a user. */ NintendoSwitchDeviceId?: string; @@ -4003,6 +4205,22 @@ declare module PlayFabClientModels { } + export interface OpenIdSubjectIdentifier { + /** The issuer URL for the OpenId Connect provider, or the override URL if an override exists. */ + Issuer: string; + /** The unique subject identifier within the context of the issuer. */ + Subject: string; + + } + + export interface OpenIdSubjectIdentifierPlayFabIdPair { + /** Unique OpenId Connect identifier for a user. */ + OpenIdSubjectIdentifier?: OpenIdSubjectIdentifier; + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the OpenId Connect identifier. */ + PlayFabId?: string; + + } + export interface OpenTradeRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Players who are allowed to accept the trade. If null, the trade may be accepted by any player. If empty, the trade may @@ -4099,7 +4317,11 @@ declare module PlayFabClientModels { Created?: string; /** Player display name */ DisplayName?: string; - /** List of experiment variants for the player. */ + /** + * List of experiment variants for the player. Note that these variants are not guaranteed to be up-to-date when returned + * during login because the player profile is updated only after login. Instead, use the LoginResult.TreatmentAssignment + * property during login to get the correct variants and variables. + */ ExperimentVariants?: string[]; /** UTC time when the player most recently logged in to the title */ LastLogin?: string; @@ -4188,21 +4410,35 @@ declare module PlayFabClientModels { } export interface PlayStation5Payload { - /** An optional list of entitlement ids to query against PSN */ + /** An optional list of entitlement ids to query against PlayStation :tm: Network */ Ids?: string[]; - /** Id of the PSN service label to consume entitlements from */ + /** Id of the PlayStation :tm: Network service label to consume entitlements from */ ServiceLabel?: string; } export interface PSNAccountPlayFabIdPair { - /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the PlayStation Network identifier. */ + /** + * Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the PlayStation :tm: Network + * identifier. + */ PlayFabId?: string; - /** Unique PlayStation Network identifier for a user. */ + /** Unique PlayStation :tm: Network identifier for a user. */ PSNAccountId?: string; } + export interface PSNOnlinePlayFabIdPair { + /** + * Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the PlayStation :tm: Network + * identifier. + */ + PlayFabId?: string; + /** Unique PlayStation :tm: Network identifier for a user. */ + PSNOnlineId?: string; + + } + export interface PurchaseItemRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version for the items to be purchased (defaults to most recent version. */ CatalogVersion?: string; @@ -4245,6 +4481,7 @@ declare module PlayFabClientModels { } type PushNotificationPlatform = "ApplePushNotificationService" + | "GoogleCloudMessaging"; export interface PushNotificationRegistrationModel { @@ -4274,35 +4511,15 @@ declare module PlayFabClientModels { } export interface RefreshPSNAuthTokenRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Auth code returned by PSN OAuth system. */ + /** Auth code returned by PlayStation :tm: Network OAuth system. */ AuthCode: string; - /** Id of the PSN issuer environment. If null, defaults to production environment. */ + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ IssuerId?: number; - /** Redirect URI supplied to PSN when requesting an auth code */ + /** Redirect URI supplied to PlayStation :tm: Network when requesting an auth code */ RedirectUri: string; } - type Region = "USCentral" - | "USEast" - | "EUWest" - | "Singapore" - | "Japan" - | "Brazil" - | "Australia"; - - export interface RegionInfo { - /** indicates whether the server specified is available in this region */ - Available: boolean; - /** name of the region */ - Name?: string; - /** url to ping to get roundtrip time */ - PingUrl?: string; - /** unique identifier for the region */ - Region?: string; - - } - export interface RegisterForIOSPushNotificationRequest extends PlayFabModule.IPlayFabRequestCommon { /** Message to display when confirming push notification. */ ConfirmationMessage?: string; @@ -4324,13 +4541,13 @@ declare module PlayFabClientModels { DisplayName?: string; /** User email address attached to their account */ Email?: string; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Password for the PlayFab account (6-100 characters) */ Password?: string; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * An optional parameter that specifies whether both the username and email parameters are required. If true, both @@ -4365,29 +4582,6 @@ declare module PlayFabClientModels { } - export interface RegisterWithWindowsHelloRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Device name. */ - DeviceName?: string; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ - EncryptedRequest?: string; - /** Flags for which pieces of info to return for the user. */ - InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ - PlayerSecret?: string; - /** PublicKey generated by Windows Hello. */ - PublicKey?: string; - /** - * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a - * title has been selected. - */ - TitleId: string; - /** Player's user name used by Windows Hello. */ - UserName?: string; - - } - export interface RemoveContactEmailRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -4551,9 +4745,9 @@ declare module PlayFabClientModels { } export interface SetPlayerSecretRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; } @@ -4575,6 +4769,7 @@ declare module PlayFabClientModels { } type SourceType = "Admin" + | "BackEnd" | "GameClient" | "GameServer" @@ -4582,44 +4777,6 @@ declare module PlayFabClientModels { | "Custom" | "API"; - export interface StartGameRequest extends PlayFabModule.IPlayFabRequestCommon { - /** version information for the build of the game server which is to be started */ - BuildVersion: string; - /** character to use for stats based matching. Leave null to use account stats */ - CharacterId?: string; - /** custom command line argument when starting game server process */ - CustomCommandLineData?: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** the title-defined game mode this server is to be running (defaults to 0 if there is only one mode) */ - GameMode: string; - /** the region to associate this server with for match filtering */ - Region: string; - /** player statistic for others to use in finding this game. May be null for no stat-based matching */ - StatisticName?: string; - - } - - export interface StartGameResult extends PlayFabModule.IPlayFabResultCommon { - /** timestamp for when the server should expire, if applicable */ - Expires?: string; - /** unique identifier for the lobby of the server started */ - LobbyID?: string; - /** password required to log into the server */ - Password?: string; - /** server IPV4 address */ - ServerIPV4Address?: string; - /** server IPV6 address */ - ServerIPV6Address?: string; - /** port on the server to be used for communication */ - ServerPort?: number; - /** server public DNS name */ - ServerPublicDNSName?: string; - /** unique identifier for the server */ - Ticket?: string; - - } - export interface StartPurchaseRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version for the items to be purchased. Defaults to most recent catalog. */ CatalogVersion?: string; @@ -4685,6 +4842,14 @@ declare module PlayFabClientModels { } + export interface SteamNamePlayFabIdPair { + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Steam identifier. */ + PlayFabId?: string; + /** Unique Steam identifier for a user, also known as Steam persona name. */ + SteamName?: string; + + } + export interface SteamPlayFabIdPair { /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Steam identifier. */ PlayFabId?: string; @@ -4739,6 +4904,7 @@ declare module PlayFabClientModels { } type SubscriptionProviderStatus = "NoError" + | "Cancelled" | "UnknownError" | "BillingError" @@ -4764,6 +4930,7 @@ declare module PlayFabClientModels { } type TitleActivationStatus = "None" + | "ActivatedTitleKey" | "PendingSteam" | "ActivatedSteam" @@ -4812,6 +4979,7 @@ declare module PlayFabClientModels { } type TradeStatus = "Invalid" + | "Opening" | "Open" | "Accepting" @@ -4820,6 +4988,7 @@ declare module PlayFabClientModels { | "Cancelled"; type TransactionStatus = "CreateCart" + | "Init" | "Approved" | "Succeeded" @@ -4877,6 +5046,12 @@ declare module PlayFabClientModels { } + export interface UnlinkBattleNetAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + + } + export interface UnlinkCustomIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Custom unique identifier for the user, generated by the title. If not specified, the most recently signed in Custom ID @@ -4934,6 +5109,16 @@ declare module PlayFabClientModels { } + export interface UnlinkGooglePlayGamesServicesAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + + } + + export interface UnlinkGooglePlayGamesServicesAccountResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface UnlinkIOSDeviceIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -5020,18 +5205,6 @@ declare module PlayFabClientModels { } - export interface UnlinkWindowsHelloAccountRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** SHA256 hash of the PublicKey generated by Windows Hello. */ - PublicKeyHint: string; - - } - - export interface UnlinkWindowsHelloAccountResponse extends PlayFabModule.IPlayFabResultCommon { - - } - export interface UnlinkXboxAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -5138,6 +5311,28 @@ declare module PlayFabClientModels { } + export interface UpdatePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Optional field used for concurrency control. One can ensure that the update operation will only be performed if the + * player's properties have not been updated by any other clients since last the version. + */ + ExpectedPropertiesVersion?: number; + /** Collection of properties to be set for a player. */ + Properties: UpdateProperty[]; + + } + + export interface UpdatePlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + + } + export interface UpdatePlayerStatisticsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -5150,6 +5345,14 @@ declare module PlayFabClientModels { } + export interface UpdateProperty { + /** Name of the custom property. Can contain Unicode letters and digits. They are limited in size. */ + Name: string; + /** Value of the custom property. Limited to booleans, numbers, and strings. */ + Value: any; + + } + export interface UpdateSharedGroupDataRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -5223,6 +5426,8 @@ declare module PlayFabClientModels { AndroidDeviceInfo?: UserAndroidDeviceInfo; /** Sign in with Apple account information, if an Apple account has been linked */ AppleAccountInfo?: UserAppleIdInfo; + /** Battle.net account information, if a Battle.net account has been linked */ + BattleNetAccountInfo?: UserBattleNetInfo; /** Timestamp indicating when the user account was created */ Created: string; /** Custom ID information, if a custom ID has been assigned */ @@ -5235,6 +5440,8 @@ declare module PlayFabClientModels { GameCenterInfo?: UserGameCenterInfo; /** User Google account information, if a Google account has been linked */ GoogleInfo?: UserGoogleInfo; + /** User Google Play Games account information, if a Google Play Games account has been linked */ + GooglePlayGamesInfo?: UserGooglePlayGamesInfo; /** User iOS device information, if an iOS device has been linked */ IosDeviceInfo?: UserIosDeviceInfo; /** User Kongregate account information, if a Kongregate account has been linked */ @@ -5249,8 +5456,10 @@ declare module PlayFabClientModels { PlayFabId?: string; /** Personal information for the user which is considered more sensitive */ PrivateInfo?: UserPrivateAccountInfo; - /** User PSN account information, if a PSN account has been linked */ + /** User PlayStation :tm: Network account information, if a PlayStation :tm: Network account has been linked */ PsnInfo?: UserPsnInfo; + /** Server Custom ID information, if a server custom ID has been assigned */ + ServerCustomIdInfo?: UserServerCustomIdInfo; /** User Steam information, if a Steam account has been linked */ SteamInfo?: UserSteamInfo; /** Title-specific information for the user account */ @@ -5259,8 +5468,6 @@ declare module PlayFabClientModels { TwitchInfo?: UserTwitchInfo; /** User account name in the PlayFab service */ Username?: string; - /** Windows Hello account information, if a Windows Hello account has been linked */ - WindowsHelloInfo?: UserWindowsHelloInfo; /** User XBox account information, if a XBox account has been linked */ XboxInfo?: UserXboxInfo; @@ -5278,6 +5485,14 @@ declare module PlayFabClientModels { } + export interface UserBattleNetInfo { + /** Battle.net identifier */ + BattleNetAccountId?: string; + /** Battle.net display name */ + BattleNetBattleTag?: string; + + } + export interface UserCustomIdInfo { /** Custom ID */ CustomId?: string; @@ -5285,6 +5500,7 @@ declare module PlayFabClientModels { } type UserDataPermission = "Private" + | "Public"; export interface UserDataRecord { @@ -5334,6 +5550,16 @@ declare module PlayFabClientModels { } + export interface UserGooglePlayGamesInfo { + /** Avatar image url of the Google Play Games player */ + GooglePlayGamesPlayerAvatarImageUrl?: string; + /** Display name of the Google Play Games player */ + GooglePlayGamesPlayerDisplayName?: string; + /** Google Play Games player ID */ + GooglePlayGamesPlayerId?: string; + + } + export interface UserIosDeviceInfo { /** iOS device ID */ IosDeviceId?: string; @@ -5371,6 +5597,7 @@ declare module PlayFabClientModels { } type UserOrigination = "Organic" + | "Steam" | "Google" | "Amazon" @@ -5387,13 +5614,16 @@ declare module PlayFabClientModels { | "XboxLive" | "Parse" | "Twitch" - | "WindowsHello" | "ServerCustomId" | "NintendoSwitchDeviceId" | "FacebookInstantGamesId" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserPrivateAccountInfo { /** user email address */ @@ -5402,13 +5632,19 @@ declare module PlayFabClientModels { } export interface UserPsnInfo { - /** PSN account ID */ + /** PlayStation :tm: Network account ID */ PsnAccountId?: string; - /** PSN online ID */ + /** PlayStation :tm: Network online ID */ PsnOnlineId?: string; } + export interface UserServerCustomIdInfo { + /** Custom ID */ + CustomId?: string; + + } + export interface UserSettings { /** Boolean for whether this player is eligible for gathering device info. */ GatherDeviceInfo: boolean; @@ -5467,17 +5703,11 @@ declare module PlayFabClientModels { } - export interface UserWindowsHelloInfo { - /** Windows Hello Device Name */ - WindowsHelloDeviceName?: string; - /** Windows Hello Public Key Hash */ - WindowsHelloPublicKeyHash?: string; - - } - export interface UserXboxInfo { /** XBox user ID */ XboxUserId?: string; + /** XBox user sandbox */ + XboxUserSandbox?: string; } @@ -5532,10 +5762,12 @@ declare module PlayFabClientModels { CurrencyCode?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; + /** Base64 encoded receipt data, passed back by the App Store as a result of a successful purchase. */ + JwsReceiptData?: string; /** Amount of the stated currency paid, in centesimal units. */ PurchasePrice: number; /** Base64 encoded receipt data, passed back by the App Store as a result of a successful purchase. */ - ReceiptData: string; + ReceiptData?: string; } diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabCloudScriptApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabCloudScriptApi.d.ts index 5eeab994..38ac8fc3 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabCloudScriptApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabCloudScriptApi.d.ts @@ -9,63 +9,78 @@ declare module PlayFabCloudScriptModule { * custom server-side functionality you can implement, and it can be used in conjunction with virtually anything. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/executeentitycloudscript */ - ExecuteEntityCloudScript(request: PlayFabCloudScriptModels.ExecuteEntityCloudScriptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ExecuteEntityCloudScript(request: PlayFabCloudScriptModels.ExecuteEntityCloudScriptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Cloud Script is one of PlayFab's most versatile features. It allows client code to request execution of any kind of * custom server-side functionality you can implement, and it can be used in conjunction with virtually anything. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/executefunction */ - ExecuteFunction(request: PlayFabCloudScriptModels.ExecuteFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ExecuteFunction(request: PlayFabCloudScriptModels.ExecuteFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets registered Azure Functions for a given title id and function name. + * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/getfunction + */ + GetFunction(request: PlayFabCloudScriptModels.GetFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Lists all currently registered Event Hub triggered Azure Functions for a given title. + * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/listeventhubfunctions + */ + ListEventHubFunctions(request: PlayFabCloudScriptModels.ListFunctionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all currently registered Azure Functions for a given title. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/listfunctions */ - ListFunctions(request: PlayFabCloudScriptModels.ListFunctionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListFunctions(request: PlayFabCloudScriptModels.ListFunctionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all currently registered HTTP triggered Azure Functions for a given title. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/listhttpfunctions */ - ListHttpFunctions(request: PlayFabCloudScriptModels.ListFunctionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListHttpFunctions(request: PlayFabCloudScriptModels.ListFunctionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all currently registered Queue triggered Azure Functions for a given title. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/listqueuedfunctions */ - ListQueuedFunctions(request: PlayFabCloudScriptModels.ListFunctionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListQueuedFunctions(request: PlayFabCloudScriptModels.ListFunctionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Generate an entity PlayStream event for the provided function result. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/postfunctionresultforentitytriggeredaction */ - PostFunctionResultForEntityTriggeredAction(request: PlayFabCloudScriptModels.PostFunctionResultForEntityTriggeredActionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + PostFunctionResultForEntityTriggeredAction(request: PlayFabCloudScriptModels.PostFunctionResultForEntityTriggeredActionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Generate an entity PlayStream event for the provided function result. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/postfunctionresultforfunctionexecution */ - PostFunctionResultForFunctionExecution(request: PlayFabCloudScriptModels.PostFunctionResultForFunctionExecutionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + PostFunctionResultForFunctionExecution(request: PlayFabCloudScriptModels.PostFunctionResultForFunctionExecutionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Generate a player PlayStream event for the provided function result. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/postfunctionresultforplayertriggeredaction */ - PostFunctionResultForPlayerTriggeredAction(request: PlayFabCloudScriptModels.PostFunctionResultForPlayerTriggeredActionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + PostFunctionResultForPlayerTriggeredAction(request: PlayFabCloudScriptModels.PostFunctionResultForPlayerTriggeredActionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Generate a PlayStream event for the provided function result. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/postfunctionresultforscheduledtask */ - PostFunctionResultForScheduledTask(request: PlayFabCloudScriptModels.PostFunctionResultForScheduledTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + PostFunctionResultForScheduledTask(request: PlayFabCloudScriptModels.PostFunctionResultForScheduledTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Registers an event hub triggered Azure Function with a title. + * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/registereventhubfunction + */ + RegisterEventHubFunction(request: PlayFabCloudScriptModels.RegisterEventHubFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Registers an HTTP triggered Azure function with a title. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/registerhttpfunction */ - RegisterHttpFunction(request: PlayFabCloudScriptModels.RegisterHttpFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RegisterHttpFunction(request: PlayFabCloudScriptModels.RegisterHttpFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Registers a queue triggered Azure Function with a title. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/registerqueuedfunction */ - RegisterQueuedFunction(request: PlayFabCloudScriptModels.RegisterQueuedFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RegisterQueuedFunction(request: PlayFabCloudScriptModels.RegisterQueuedFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unregisters an Azure Function with a title. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/unregisterfunction */ - UnregisterFunction(request: PlayFabCloudScriptModels.UnregisterFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnregisterFunction(request: PlayFabCloudScriptModels.UnregisterFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } @@ -82,6 +97,7 @@ declare module PlayFabCloudScriptModels { } type CloudScriptRevisionOption = "Live" + | "Latest" | "Specific"; @@ -96,14 +112,17 @@ declare module PlayFabCloudScriptModels { } type ContinentCode = "AF" + | "AN" | "AS" | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" + | "AX" | "AL" | "DZ" @@ -351,9 +370,11 @@ declare module PlayFabCloudScriptModels { | "EH" | "YE" | "ZM" - | "ZW"; + | "ZW" + | "Unknown"; type EmailVerificationStatus = "Unverified" + | "Pending" | "Confirmed"; @@ -369,6 +390,16 @@ declare module PlayFabCloudScriptModels { } + export interface EventHubFunctionModel { + /** The connection string for the event hub. */ + ConnectionString?: string; + /** The name of the event hub that triggers the Azure Function. */ + EventHubName?: string; + /** The name the function was registered under. */ + FunctionName?: string; + + } + export interface ExecuteCloudScriptResult extends PlayFabModule.IPlayFabResultCommon { /** Number of PlayFab API requests issued by the CloudScript function */ APIRequestsIssued: number; @@ -410,7 +441,7 @@ declare module PlayFabCloudScriptModels { export interface ExecuteEntityCloudScriptRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The name of the CloudScript function to execute */ FunctionName: string; @@ -435,7 +466,7 @@ declare module PlayFabCloudScriptModels { export interface ExecuteFunctionRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The name of the CloudScript function to execute */ FunctionName: string; @@ -458,6 +489,8 @@ declare module PlayFabCloudScriptModels { FunctionName?: string; /** The object returned from the function, if any */ FunctionResult?: any; + /** The size in bytes of the object returned from the function, if any */ + FunctionResultSize?: number; /** Flag indicating if the FunctionResult was too large and was subsequently dropped from this event. */ FunctionResultTooLarge?: boolean; @@ -486,6 +519,26 @@ declare module PlayFabCloudScriptModels { } + export interface GetFunctionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the function to register */ + FunctionName: string; + + } + + export interface GetFunctionResult extends PlayFabModule.IPlayFabResultCommon { + /** The connection string for the storage account containing the queue for a queue trigger Azure Function. */ + ConnectionString?: string; + /** The URL to be invoked to execute an HTTP triggered function. */ + FunctionUrl?: string; + /** The name of the queue for a queue trigger Azure Function. */ + QueueName?: string; + /** The trigger type for the function. */ + TriggerType?: string; + + } + export interface HttpFunctionModel { /** The name the function was registered under. */ FunctionName?: string; @@ -506,6 +559,12 @@ declare module PlayFabCloudScriptModels { } + export interface ListEventHubFunctionsResult extends PlayFabModule.IPlayFabResultCommon { + /** The list of EventHub triggered functions that are currently registered for the title. */ + Functions?: EventHubFunctionModel[]; + + } + export interface ListFunctionsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -545,6 +604,7 @@ declare module PlayFabCloudScriptModels { } type LoginIdentityProvider = "Unknown" + | "PlayFab" | "Custom" | "GameCenter" @@ -564,7 +624,11 @@ declare module PlayFabCloudScriptModels { | "FacebookInstantGames" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface LogStatement { /** Optional object accompanying the message as contextual information */ @@ -613,7 +677,11 @@ declare module PlayFabCloudScriptModels { Created?: string; /** Player display name */ DisplayName?: string; - /** List of experiment variants for the player. */ + /** + * List of experiment variants for the player. Note that these variants are not guaranteed to be up-to-date when returned + * during login because the player profile is updated only after login. Instead, use the LoginResult.TreatmentAssignment + * property during login to get the correct variants and variables. + */ ExperimentVariants?: string[]; /** UTC time when the player most recently logged in to the title */ LastLogin?: string; @@ -686,8 +754,6 @@ declare module PlayFabCloudScriptModels { export interface PostFunctionResultForPlayerTriggeredActionRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ - Entity?: EntityKey; /** The result of the function execution. */ FunctionResult: ExecuteFunctionResult; /** The player profile the function was invoked with. */ @@ -700,8 +766,6 @@ declare module PlayFabCloudScriptModels { export interface PostFunctionResultForScheduledTaskRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ - Entity: EntityKey; /** The result of the function execution */ FunctionResult: ExecuteFunctionResult; /** The id of the scheduled task that invoked the function. */ @@ -710,6 +774,7 @@ declare module PlayFabCloudScriptModels { } type PushNotificationPlatform = "ApplePushNotificationService" + | "GoogleCloudMessaging"; export interface PushNotificationRegistrationModel { @@ -730,6 +795,18 @@ declare module PlayFabCloudScriptModels { } + export interface RegisterEventHubFunctionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** A connection string for the namespace of the event hub for the Azure Function. */ + ConnectionString: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the event hub for the Azure Function. */ + EventHubName: string; + /** The name of the function to register */ + FunctionName: string; + + } + export interface RegisterHttpFunctionRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -794,6 +871,7 @@ declare module PlayFabCloudScriptModels { } type SubscriptionProviderStatus = "NoError" + | "Cancelled" | "UnknownError" | "BillingError" @@ -809,12 +887,14 @@ declare module PlayFabCloudScriptModels { } type TriggerType = "HTTP" - | "Queue"; + + | "Queue" + | "EventHub"; export interface UnregisterFunctionRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The name of the function to unregister */ + /** The name of the function to register */ FunctionName: string; } diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabDataApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabDataApi.d.ts index 9c817922..287d8c21 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabDataApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabDataApi.d.ts @@ -8,37 +8,37 @@ declare module PlayFabDataModule { * Abort pending file uploads to an entity's profile. * https://docs.microsoft.com/rest/api/playfab/data/file/abortfileuploads */ - AbortFileUploads(request: PlayFabDataModels.AbortFileUploadsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AbortFileUploads(request: PlayFabDataModels.AbortFileUploadsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Delete files on an entity's profile. * https://docs.microsoft.com/rest/api/playfab/data/file/deletefiles */ - DeleteFiles(request: PlayFabDataModels.DeleteFilesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteFiles(request: PlayFabDataModels.DeleteFilesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Finalize file uploads to an entity's profile. * https://docs.microsoft.com/rest/api/playfab/data/file/finalizefileuploads */ - FinalizeFileUploads(request: PlayFabDataModels.FinalizeFileUploadsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + FinalizeFileUploads(request: PlayFabDataModels.FinalizeFileUploadsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves file metadata from an entity's profile. * https://docs.microsoft.com/rest/api/playfab/data/file/getfiles */ - GetFiles(request: PlayFabDataModels.GetFilesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetFiles(request: PlayFabDataModels.GetFilesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves objects from an entity's profile. * https://docs.microsoft.com/rest/api/playfab/data/object/getobjects */ - GetObjects(request: PlayFabDataModels.GetObjectsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetObjects(request: PlayFabDataModels.GetObjectsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Initiates file uploads to an entity's profile. * https://docs.microsoft.com/rest/api/playfab/data/file/initiatefileuploads */ - InitiateFileUploads(request: PlayFabDataModels.InitiateFileUploadsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + InitiateFileUploads(request: PlayFabDataModels.InitiateFileUploadsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets objects on an entity's profile. * https://docs.microsoft.com/rest/api/playfab/data/object/setobjects */ - SetObjects(request: PlayFabDataModels.SetObjectsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetObjects(request: PlayFabDataModels.SetObjectsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } @@ -52,8 +52,11 @@ declare module PlayFabDataModels { /** Names of the files to have their pending uploads aborted. */ FileNames: string[]; /** - * The expected version of the profile, if set and doesn't match the current version of the profile the operation will not - * be performed. + * Optional field used for concurrency control. By specifying the previously returned ProfileVersion value from the + * InitiateFileUploads API or other APIs, you can ensure that the file upload abort operation is performed only if the + * profile has not been updated since you last loaded that version. If the profile for the same entity has been updated, + * the operation will fail with an EntityProfileVersionMismatch error. The conflicting update can be caused by any + * operation that modifies the entity profile, including SetObjects, FinalizeFileUploads, and UpdateStatistics. */ ProfileVersion?: number; @@ -75,8 +78,11 @@ declare module PlayFabDataModels { /** Names of the files to be deleted. */ FileNames: string[]; /** - * The expected version of the profile, if set and doesn't match the current version of the profile the operation will not - * be performed. + * Optional field used for concurrency control. By specifying the previously returned ProfileVersion value from the + * GetFiles API or other APIs, you can ensure that the file deletion is performed only if the profile has not been updated + * since you last loaded that version. If the profile for the same entity has been updated, the operation will fail with an + * EntityProfileVersionMismatch error. The conflicting update can be caused by any operation that modifies the entity + * profile, including SetObjects, FinalizeFileUploads, and UpdateStatistics. */ ProfileVersion?: number; @@ -105,7 +111,13 @@ declare module PlayFabDataModels { Entity: EntityKey; /** Names of the files to be finalized. Restricted to a-Z, 0-9, '(', ')', '_', '-' and '.' */ FileNames: string[]; - /** The current version of the profile, can be used for concurrency control during updates. */ + /** + * Field used for concurrency control. By specifying the previously returned ProfileVersion value from the + * InitiateFileUploads API, you can ensure that the file upload finalization is performed only if the profile has not been + * updated since you last loaded that version. If the profile for the same entity has been updated, the operation will fail + * with an EntityProfileVersionMismatch error. The conflicting update can be caused by any operation that modifies the + * entity profile, including SetObjects, FinalizeFileUploads, and UpdateStatistics. + */ ProfileVersion: number; } @@ -191,8 +203,11 @@ declare module PlayFabDataModels { /** Names of the files to be set. Restricted to a-Z, 0-9, '(', ')', '_', '-' and '.' */ FileNames: string[]; /** - * The expected version of the profile, if set and doesn't match the current version of the profile the operation will not - * be performed. + * Optional field used for concurrency control. By specifying the previously returned ProfileVersion value from the + * GetFiles API or other APIs, you can ensure that the file upload initiation is performed only if the profile has not been + * updated since you last loaded that version. If the profile for the same entity has been updated, the operation will fail + * with an EntityProfileVersionMismatch error. The conflicting update can be caused by any operation that modifies the + * entity profile, including SetObjects, FinalizeFileUploads, and UpdateStatistics. */ ProfileVersion?: number; @@ -219,6 +234,7 @@ declare module PlayFabDataModels { } type OperationTypes = "Created" + | "Updated" | "Deleted" | "None"; @@ -257,9 +273,11 @@ declare module PlayFabDataModels { /** The entity to perform this action on. */ Entity: EntityKey; /** - * Optional field used for concurrency control. By specifying the previously returned value of ProfileVersion from - * GetProfile API, you can ensure that the object set will only be performed if the profile has not been updated by any - * other clients since the version you last loaded. + * Optional field used for concurrency control. By specifying the previously returned ProfileVersion value from the + * GetObjects API or other APIs, you can ensure that the object update is performed only if the profile has not been + * updated since you last loaded that version. If the profile for the same entity has been updated, the operation will fail + * with an EntityProfileVersionMismatch error. The conflicting update can be caused by any operation that modifies the + * entity profile, including SetObjects, FinalizeFileUploads, and UpdateStatistics. */ ExpectedProfileVersion?: number; /** Collection of objects to set on the profile. */ diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabEconomyApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabEconomyApi.d.ts new file mode 100644 index 00000000..733020c5 --- /dev/null +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabEconomyApi.d.ts @@ -0,0 +1,2494 @@ +/// + +declare module PlayFabEconomyModule { + export interface IPlayFabEconomy { + ForgetAllCredentials(): void; + + /** + * Add inventory items. Up to 10,000 stacks of items can be added to a single inventory collection. Stack size is uncapped. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/addinventoryitems + */ + AddInventoryItems(request: PlayFabEconomyModels.AddInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates a new item in the working catalog using provided metadata. Note: SAS tokens provided are valid for 1 hour. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/createdraftitem + */ + CreateDraftItem(request: PlayFabEconomyModels.CreateDraftItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates one or more upload URLs which can be used by the client to upload raw file data. Content URls and uploaded + * content will be garbage collected after 24 hours if not attached to a draft or published item. Detailed pricing info + * around uploading content can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/pricing/meters/catalog-meters + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/createuploadurls + */ + CreateUploadUrls(request: PlayFabEconomyModels.CreateUploadUrlsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes all reviews, helpfulness votes, and ratings submitted by the entity specified. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/deleteentityitemreviews + */ + DeleteEntityItemReviews(request: PlayFabEconomyModels.DeleteEntityItemReviewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Delete an Inventory Collection. More information about Inventory Collections can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/inventory/collections + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/deleteinventorycollection + */ + DeleteInventoryCollection(request: PlayFabEconomyModels.DeleteInventoryCollectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Delete inventory items + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/deleteinventoryitems + */ + DeleteInventoryItems(request: PlayFabEconomyModels.DeleteInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Removes an item from working catalog and all published versions from the public catalog. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/deleteitem + */ + DeleteItem(request: PlayFabEconomyModels.DeleteItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Execute a list of Inventory Operations. A maximum list of 50 operations can be performed by a single request. There is + * also a limit to 300 items that can be modified/added in a single request. For example, adding a bundle with 50 items + * counts as 50 items modified. All operations must be done within a single inventory collection. This API has a reduced + * RPS compared to an individual inventory operation with Player Entities limited to 60 requests in 90 seconds. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/executeinventoryoperations + */ + ExecuteInventoryOperations(request: PlayFabEconomyModels.ExecuteInventoryOperationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Transfer a list of inventory items. A maximum list of 50 operations can be performed by a single request. When the + * response code is 202, one or more operations 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 1 day of the request by passing the TransactionToken to the GetInventoryOperationStatus API. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/executetransferoperations + */ + ExecuteTransferOperations(request: PlayFabEconomyModels.ExecuteTransferOperationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets the configuration for the catalog. Only Title Entities can call this API. There is a limit of 100 requests in 10 + * seconds for this API. More information about the Catalog Config can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/settings + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getcatalogconfig + */ + GetCatalogConfig(request: PlayFabEconomyModels.GetCatalogConfigRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves an item from the working catalog. This item represents the current working state of the item. GetDraftItem + * does not work off a cache of the Catalog and should be used when trying to get recent item updates. However, please note + * that item references data is cached and may take a few moments for changes to propagate. Note: SAS tokens provided are + * valid for 1 hour. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getdraftitem + */ + GetDraftItem(request: PlayFabEconomyModels.GetDraftItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves a paginated list of the items from the draft catalog. Up to 50 IDs can be retrieved in a single request. + * GetDraftItems does not work off a cache of the Catalog and should be used when trying to get recent item updates. Note: + * SAS tokens provided are valid for 1 hour. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getdraftitems + */ + GetDraftItems(request: PlayFabEconomyModels.GetDraftItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves a paginated list of the items from the draft catalog created by the Entity. Up to 50 items can be returned at + * once. You can use continuation tokens to paginate through results that return greater than the limit. + * GetEntityDraftItems does not work off a cache of the Catalog and should be used when trying to get recent item updates. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getentitydraftitems + */ + GetEntityDraftItems(request: PlayFabEconomyModels.GetEntityDraftItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets the submitted review for the specified item by the authenticated entity. Individual ratings and reviews data update + * in near real time with delays within a few seconds. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getentityitemreview + */ + GetEntityItemReview(request: PlayFabEconomyModels.GetEntityItemReviewRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get Inventory Collection Ids. Up to 50 Ids can be returned at once (or 250 with response compression enabled). You can + * use continuation tokens to paginate through results that return greater than the limit. It can take a few seconds for + * new collection Ids to show up. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/getinventorycollectionids + */ + GetInventoryCollectionIds(request: PlayFabEconomyModels.GetInventoryCollectionIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get current inventory items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/getinventoryitems + */ + GetInventoryItems(request: PlayFabEconomyModels.GetInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get the status of an inventory operation using an OperationToken. You can check on the operation status at anytime + * within 1 day of the request by passing the TransactionToken to the this API. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/getinventoryoperationstatus + */ + GetInventoryOperationStatus(request: PlayFabEconomyModels.GetInventoryOperationStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves an item from the public catalog. GetItem does not work off a cache of the Catalog and should be used when + * trying to get recent item updates. However, please note that item references data is cached and may take a few moments + * for changes to propagate. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getitem + */ + GetItem(request: PlayFabEconomyModels.GetItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Search for a given item and return a set of bundles and stores containing the item. Up to 50 items can be returned at + * once. You can use continuation tokens to paginate through results that return greater than the limit. This API is + * intended for tooling/automation scenarios and has a reduced RPS with Player Entities limited to 30 requests in 300 + * seconds and Title Entities limited to 100 requests in 10 seconds. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getitemcontainers + */ + GetItemContainers(request: PlayFabEconomyModels.GetItemContainersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets the moderation state for an item, including the concern category and string reason. More information about + * moderation states can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/ugc/moderation + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getitemmoderationstate + */ + GetItemModerationState(request: PlayFabEconomyModels.GetItemModerationStateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets the status of a publish of an item. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getitempublishstatus + */ + GetItemPublishStatus(request: PlayFabEconomyModels.GetItemPublishStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get a paginated set of reviews associated with the specified item. Individual ratings and reviews data update in near + * real time with delays within a few seconds. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getitemreviews + */ + GetItemReviews(request: PlayFabEconomyModels.GetItemReviewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get a summary of all ratings and reviews associated with the specified item. Summary ratings data is cached with update + * data coming within 15 minutes. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getitemreviewsummary + */ + GetItemReviewSummary(request: PlayFabEconomyModels.GetItemReviewSummaryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves items from the public catalog. Up to 50 items can be returned at once. GetItems does not work off a cache of + * the Catalog and should be used when trying to get recent item updates. However, please note that item references data is + * cached and may take a few moments for changes to propagate. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getitems + */ + GetItems(request: PlayFabEconomyModels.GetItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get transaction history for a player. Up to 50 Events can be returned at once (or 250 with response compression + * enabled). You can use continuation tokens to paginate through results that return greater than the limit. Getting + * transaction history has a lower RPS limit than getting a Player's inventory with Player Entities having a limit of 30 + * requests in 300 seconds. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/gettransactionhistory + */ + GetTransactionHistory(request: PlayFabEconomyModels.GetTransactionHistoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Initiates a publish of an item from the working catalog to the public catalog. You can use the GetItemPublishStatus API + * to track the state of the item publish. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/publishdraftitem + */ + PublishDraftItem(request: PlayFabEconomyModels.PublishDraftItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Purchase an item or bundle. Up to 10,000 stacks of items can be added to a single inventory collection. Stack size is + * uncapped. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/purchaseinventoryitems + */ + PurchaseInventoryItems(request: PlayFabEconomyModels.PurchaseInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Redeem items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/redeemappleappstoreinventoryitems + */ + RedeemAppleAppStoreInventoryItems(request: PlayFabEconomyModels.RedeemAppleAppStoreInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Redeem items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/redeemappleappstorewithjwsinventoryitems + */ + RedeemAppleAppStoreWithJwsInventoryItems(request: PlayFabEconomyModels.RedeemAppleAppStoreWithJwsInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Redeem items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/redeemgoogleplayinventoryitems + */ + RedeemGooglePlayInventoryItems(request: PlayFabEconomyModels.RedeemGooglePlayInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Redeem items from the Microsoft Store. Supported entitlement types are Developer Manager Consumable and Durable. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/redeemmicrosoftstoreinventoryitems + */ + RedeemMicrosoftStoreInventoryItems(request: PlayFabEconomyModels.RedeemMicrosoftStoreInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Redeem items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/redeemnintendoeshopinventoryitems + */ + RedeemNintendoEShopInventoryItems(request: PlayFabEconomyModels.RedeemNintendoEShopInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Redeem items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/redeemplaystationstoreinventoryitems + */ + RedeemPlayStationStoreInventoryItems(request: PlayFabEconomyModels.RedeemPlayStationStoreInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Redeem items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/redeemsteaminventoryitems + */ + RedeemSteamInventoryItems(request: PlayFabEconomyModels.RedeemSteamInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Submit a report for an item, indicating in what way the item is inappropriate. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/reportitem + */ + ReportItem(request: PlayFabEconomyModels.ReportItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Submit a report for a review + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/reportitemreview + */ + ReportItemReview(request: PlayFabEconomyModels.ReportItemReviewRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates or updates a review for the specified item. More information around the caching surrounding item ratings and + * reviews can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/ratings#ratings-design-and-caching + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/reviewitem + */ + ReviewItem(request: PlayFabEconomyModels.ReviewItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Executes a search against the public catalog using the provided search parameters and returns a set of paginated + * results. SearchItems uses a cache of the catalog with item updates taking up to a few minutes to propagate. You should + * use the GetItem API for when trying to immediately get recent item updates. More information about the Search API can be + * found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/search + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/searchitems + */ + SearchItems(request: PlayFabEconomyModels.SearchItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Sets the moderation state for an item, including the concern category and string reason. More information about + * moderation states can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/ugc/moderation + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/setitemmoderationstate + */ + SetItemModerationState(request: PlayFabEconomyModels.SetItemModerationStateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Submit a vote for a review, indicating whether the review was helpful or unhelpful. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/submititemreviewvote + */ + SubmitItemReviewVote(request: PlayFabEconomyModels.SubmitItemReviewVoteRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Subtract inventory items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/subtractinventoryitems + */ + SubtractInventoryItems(request: PlayFabEconomyModels.SubtractInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Submit a request to takedown one or more reviews. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/takedownitemreviews + */ + TakedownItemReviews(request: PlayFabEconomyModels.TakedownItemReviewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * 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 1 day of the request by passing the + * TransactionToken to the GetInventoryOperationStatus API. 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 + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/transferinventoryitems + */ + TransferInventoryItems(request: PlayFabEconomyModels.TransferInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Updates the configuration for the catalog. Only Title Entities can call this API. There is a limit of 10 requests in 10 + * seconds for this API. More information about the Catalog Config can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/settings + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/updatecatalogconfig + */ + UpdateCatalogConfig(request: PlayFabEconomyModels.UpdateCatalogConfigRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Update the metadata for an item in the working catalog. Note: SAS tokens provided are valid for 1 hour. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/updatedraftitem + */ + UpdateDraftItem(request: PlayFabEconomyModels.UpdateDraftItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Update inventory items + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/updateinventoryitems + */ + UpdateInventoryItems(request: PlayFabEconomyModels.UpdateInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + + } +} + +declare module PlayFabEconomyModels { + export interface AddInventoryItemsOperation { + /** The amount to add to the current item amount. */ + Amount?: number; + /** The duration to add to the current item expiration date. */ + DurationInSeconds?: number; + /** The inventory item the operation applies to. */ + Item?: InventoryItemReference; + /** The values to apply to a stack newly created by this operation. */ + NewStackValues?: InitialValues; + + } + + export interface AddInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The amount to add for the current item. */ + Amount?: number; + /** + * The id of the entity's collection to perform this action on. (Default="default"). The number of inventory collections is + * unlimited. + */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The duration to add to the current item expiration date. */ + DurationInSeconds?: number; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** + * The Idempotency ID for this request. Idempotency IDs can be used to prevent operation replay in the medium term but will + * be garbage collected eventually. + */ + IdempotencyId?: string; + /** The inventory item the request applies to. */ + Item?: InventoryItemReference; + /** The values to apply to a stack newly created by this request. */ + NewStackValues?: InitialValues; + + } + + export interface AddInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** The idempotency id used in the request. */ + IdempotencyId?: string; + /** The ids of transactions that occurred as a result of the request. */ + TransactionIds?: string[]; + + } + + export interface AlternateId { + /** Type of the alternate ID. */ + Type?: string; + /** Value of the alternate ID. */ + Value?: string; + + } + + export interface CatalogAlternateId { + /** Type of the alternate ID. */ + Type?: string; + /** Value of the alternate ID. */ + Value?: string; + + } + + export interface CatalogConfig { + /** A list of player entity keys that will have admin permissions. There is a maximum of 64 entities that can be added. */ + AdminEntities?: EntityKey[]; + /** The set of configuration that only applies to catalog items. */ + Catalog?: CatalogSpecificConfig; + /** A list of deep link formats. Up to 10 can be added. */ + DeepLinkFormats?: DeepLinkFormat[]; + /** + * A list of display properties to index. Up to 5 mappings can be added per Display Property Type. More info on display + * properties can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/content-types-tags-and-properties#displayproperties + */ + DisplayPropertyIndexInfos?: DisplayPropertyIndexInfo[]; + /** The set of configuration that only applies to Files. */ + File?: FileConfig; + /** The set of configuration that only applies to Images. */ + Image?: ImageConfig; + /** Flag defining whether catalog is enabled. */ + IsCatalogEnabled: boolean; + /** + * A list of Platforms that can be applied to catalog items. Each platform can have a maximum character length of 40 and up + * to 128 platforms can be listed. + */ + Platforms?: string[]; + /** The set of configuration that only applies to Ratings and Reviews. */ + Review?: ReviewConfig; + /** A set of player entity keys that are allowed to review content. There is a maximum of 128 entities that can be added. */ + ReviewerEntities?: EntityKey[]; + /** The set of configuration that only applies to user generated contents. */ + UserGeneratedContent?: UserGeneratedContentSpecificConfig; + + } + + export interface CatalogItem { + /** + * The alternate IDs associated with this item. An alternate ID can be set to 'FriendlyId' or any of the supported + * marketplace names. + */ + AlternateIds?: CatalogAlternateId[]; + /** The set of content/files associated with this item. Up to 100 files can be added to an item. */ + Contents?: Content[]; + /** The client-defined type of the item. */ + ContentType?: string; + /** The date and time when this item was created. */ + CreationDate?: string; + /** The ID of the creator of this catalog item. */ + CreatorEntity?: EntityKey; + /** The set of platform specific deep links for this item. */ + DeepLinks?: DeepLink[]; + /** + * The Stack Id that will be used as default for this item in Inventory when an explicit one is not provided. This + * DefaultStackId can be a static stack id or '{guid}', which will generate a unique stack id for the item. If null, + * Inventory's default stack id will be used. + */ + DefaultStackId?: string; + /** + * A dictionary of localized descriptions. Key is language code and localized string is the value. The NEUTRAL locale is + * required. Descriptions have a 10000 character limit per country code. + */ + Description?: { [key: string]: string | null }; + /** + * Game specific properties for display purposes. This is an arbitrary JSON blob. The Display Properties field has a 10000 + * byte limit per item. + */ + DisplayProperties?: any; + /** The user provided version of the item for display purposes. Maximum character length of 50. */ + DisplayVersion?: string; + /** The date of when the item will cease to be available. If not provided then the product will be available indefinitely. */ + EndDate?: string; + /** The current ETag value that can be used for optimistic concurrency in the If-None-Match header. */ + ETag?: string; + /** The unique ID of the item. */ + Id?: string; + /** + * The images associated with this item. Images can be thumbnails or screenshots. Up to 100 images can be added to an item. + * Only .png, .jpg, .gif, and .bmp file types can be uploaded + */ + Images?: Image[]; + /** Indicates if the item is hidden. */ + IsHidden?: boolean; + /** + * The item references associated with this item. For example, the items in a Bundle/Store/Subscription. Every item can + * have up to 50 item references. + */ + ItemReferences?: CatalogItemReference[]; + /** + * A dictionary of localized keywords. Key is language code and localized list of keywords is the value. Keywords have a 50 + * character limit per keyword and up to 32 keywords can be added per country code. + */ + Keywords?: { [key: string]: KeywordSet }; + /** The date and time this item was last updated. */ + LastModifiedDate?: string; + /** The moderation state for this item. */ + Moderation?: ModerationState; + /** The platforms supported by this item. */ + Platforms?: string[]; + /** The prices the item can be purchased for. */ + PriceOptions?: CatalogPriceOptions; + /** Rating summary for this item. */ + Rating?: Rating; + /** The real price the item was purchased for per marketplace. */ + RealMoneyPriceDetails?: RealMoneyPriceDetails; + /** The date of when the item will be available. If not provided then the product will appear immediately. */ + StartDate?: string; + /** Optional details for stores items. */ + StoreDetails?: StoreDetails; + /** The list of tags that are associated with this item. Up to 32 tags can be added to an item. */ + Tags?: string[]; + /** + * A dictionary of localized titles. Key is language code and localized string is the value. The NEUTRAL locale is + * required. Titles have a 512 character limit per country code. + */ + Title?: { [key: string]: string | null }; + /** + * The high-level type of the item. The following item types are supported: bundle, catalogItem, currency, store, ugc, + * subscription. + */ + Type?: string; + + } + + export interface CatalogItemReference { + /** The amount of the catalog item. */ + Amount?: number; + /** The unique ID of the catalog item. */ + Id?: string; + /** The prices the catalog item can be purchased for. */ + PriceOptions?: CatalogPriceOptions; + + } + + export interface CatalogPrice { + /** The amounts of the catalog item price. Each price can have up to 15 item amounts. */ + Amounts?: CatalogPriceAmount[]; + /** The per-unit amount this price can be used to purchase. */ + UnitAmount?: number; + /** The per-unit duration this price can be used to purchase. The maximum duration is 100 years. */ + UnitDurationInSeconds?: number; + + } + + export interface CatalogPriceAmount { + /** The amount of the price. */ + Amount: number; + /** The Item Id of the price. */ + ItemId?: string; + + } + + export interface CatalogPriceAmountOverride { + /** The exact value that should be utilized in the override. */ + FixedValue?: number; + /** The id of the item this override should utilize. */ + ItemId?: string; + /** + * The multiplier that will be applied to the base Catalog value to determine what value should be utilized in the + * override. + */ + Multiplier?: number; + + } + + export interface CatalogPriceOptions { + /** Prices of the catalog item. An item can have up to 15 prices */ + Prices?: CatalogPrice[]; + + } + + export interface CatalogPriceOptionsOverride { + /** The prices utilized in the override. */ + Prices?: CatalogPriceOverride[]; + + } + + export interface CatalogPriceOverride { + /** The currency amounts utilized in the override for a singular price. */ + Amounts?: CatalogPriceAmountOverride[]; + + } + + export interface CatalogSpecificConfig { + /** + * The set of content types that will be used for validation. Each content type can have a maximum character length of 40 + * and up to 128 types can be listed. + */ + ContentTypes?: string[]; + /** + * The set of tags that will be used for validation. Each tag can have a maximum character length of 32 and up to 1024 tags + * can be listed. + */ + Tags?: string[]; + + } + + export interface CategoryRatingConfig { + /** Name of the category. */ + Name?: string; + + } + + type ConcernCategory = "None" + + | "OffensiveContent" + | "ChildExploitation" + | "MalwareOrVirus" + | "PrivacyConcerns" + | "MisleadingApp" + | "PoorPerformance" + | "ReviewResponse" + | "SpamAdvertising" + | "Profanity"; + + export interface Content { + /** The content unique ID. */ + Id?: string; + /** + * The maximum client version that this content is compatible with. Client Versions can be up to 3 segments separated by + * periods(.) and each segment can have a maximum value of 65535. + */ + MaxClientVersion?: string; + /** + * The minimum client version that this content is compatible with. Client Versions can be up to 3 segments separated by + * periods(.) and each segment can have a maximum value of 65535. + */ + MinClientVersion?: string; + /** + * The list of tags that are associated with this content. Tags must be defined in the Catalog Config before being used in + * content. + */ + Tags?: string[]; + /** The client-defined type of the content. Content Types must be defined in the Catalog Config before being used. */ + Type?: string; + /** The Azure CDN URL for retrieval of the catalog item binary content. */ + Url?: string; + + } + + type CountryCode = "AF" + + | "AX" + | "AL" + | "DZ" + | "AS" + | "AD" + | "AO" + | "AI" + | "AQ" + | "AG" + | "AR" + | "AM" + | "AW" + | "AU" + | "AT" + | "AZ" + | "BS" + | "BH" + | "BD" + | "BB" + | "BY" + | "BE" + | "BZ" + | "BJ" + | "BM" + | "BT" + | "BO" + | "BQ" + | "BA" + | "BW" + | "BV" + | "BR" + | "IO" + | "BN" + | "BG" + | "BF" + | "BI" + | "KH" + | "CM" + | "CA" + | "CV" + | "KY" + | "CF" + | "TD" + | "CL" + | "CN" + | "CX" + | "CC" + | "CO" + | "KM" + | "CG" + | "CD" + | "CK" + | "CR" + | "CI" + | "HR" + | "CU" + | "CW" + | "CY" + | "CZ" + | "DK" + | "DJ" + | "DM" + | "DO" + | "EC" + | "EG" + | "SV" + | "GQ" + | "ER" + | "EE" + | "ET" + | "FK" + | "FO" + | "FJ" + | "FI" + | "FR" + | "GF" + | "PF" + | "TF" + | "GA" + | "GM" + | "GE" + | "DE" + | "GH" + | "GI" + | "GR" + | "GL" + | "GD" + | "GP" + | "GU" + | "GT" + | "GG" + | "GN" + | "GW" + | "GY" + | "HT" + | "HM" + | "VA" + | "HN" + | "HK" + | "HU" + | "IS" + | "IN" + | "ID" + | "IR" + | "IQ" + | "IE" + | "IM" + | "IL" + | "IT" + | "JM" + | "JP" + | "JE" + | "JO" + | "KZ" + | "KE" + | "KI" + | "KP" + | "KR" + | "KW" + | "KG" + | "LA" + | "LV" + | "LB" + | "LS" + | "LR" + | "LY" + | "LI" + | "LT" + | "LU" + | "MO" + | "MK" + | "MG" + | "MW" + | "MY" + | "MV" + | "ML" + | "MT" + | "MH" + | "MQ" + | "MR" + | "MU" + | "YT" + | "MX" + | "FM" + | "MD" + | "MC" + | "MN" + | "ME" + | "MS" + | "MA" + | "MZ" + | "MM" + | "NA" + | "NR" + | "NP" + | "NL" + | "NC" + | "NZ" + | "NI" + | "NE" + | "NG" + | "NU" + | "NF" + | "MP" + | "NO" + | "OM" + | "PK" + | "PW" + | "PS" + | "PA" + | "PG" + | "PY" + | "PE" + | "PH" + | "PN" + | "PL" + | "PT" + | "PR" + | "QA" + | "RE" + | "RO" + | "RU" + | "RW" + | "BL" + | "SH" + | "KN" + | "LC" + | "MF" + | "PM" + | "VC" + | "WS" + | "SM" + | "ST" + | "SA" + | "SN" + | "RS" + | "SC" + | "SL" + | "SG" + | "SX" + | "SK" + | "SI" + | "SB" + | "SO" + | "ZA" + | "GS" + | "SS" + | "ES" + | "LK" + | "SD" + | "SR" + | "SJ" + | "SZ" + | "SE" + | "CH" + | "SY" + | "TW" + | "TJ" + | "TZ" + | "TH" + | "TL" + | "TG" + | "TK" + | "TO" + | "TT" + | "TN" + | "TR" + | "TM" + | "TC" + | "TV" + | "UG" + | "UA" + | "AE" + | "GB" + | "US" + | "UM" + | "UY" + | "UZ" + | "VU" + | "VE" + | "VN" + | "VG" + | "VI" + | "WF" + | "EH" + | "YE" + | "ZM" + | "ZW" + | "Unknown"; + + export interface CreateDraftItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Metadata describing the new catalog item to be created. */ + Item?: CatalogItem; + /** Whether the item should be published immediately. This value is optional, defaults to false. */ + Publish: boolean; + + } + + export interface CreateDraftItemResponse extends PlayFabModule.IPlayFabResultCommon { + /** Updated metadata describing the catalog item just created. */ + Item?: CatalogItem; + + } + + export interface CreateUploadUrlsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Description of the files to be uploaded by the client. */ + Files?: UploadInfo[]; + + } + + export interface CreateUploadUrlsResponse extends PlayFabModule.IPlayFabResultCommon { + /** List of URLs metadata for the files to be uploaded by the client. */ + UploadUrls?: UploadUrlMetadata[]; + + } + + export interface DeepLink { + /** Target platform for this deep link. */ + Platform?: string; + /** The deep link for this platform. */ + Url?: string; + + } + + export interface DeepLinkFormat { + /** The format of the deep link to return. The format should contain '{id}' to represent where the item ID should be placed. */ + Format?: string; + /** The target platform for the deep link. */ + Platform?: string; + + } + + export interface DeleteEntityItemReviewsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + + } + + export interface DeleteEntityItemReviewsResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteInventoryCollectionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The inventory collection id the request applies to. */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity the request is about. Set to the caller by default. */ + Entity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + + } + + export interface DeleteInventoryCollectionResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteInventoryItemsOperation { + /** The inventory item the operation applies to. */ + Item?: InventoryItemReference; + + } + + export interface DeleteInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * The id of the entity's collection to perform this action on. (Default="default"). The number of inventory collections is + * unlimited. + */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** + * The Idempotency ID for this request. Idempotency IDs can be used to prevent operation replay in the medium term but will + * be garbage collected eventually. + */ + IdempotencyId?: string; + /** The inventory item the request applies to. */ + Item?: InventoryItemReference; + + } + + export interface DeleteInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** ETags are used for concurrency checking when updating resources. */ + ETag?: string; + /** The idempotency id used in the request. */ + IdempotencyId?: string; + /** The ids of transactions that occurred as a result of the request. */ + TransactionIds?: string[]; + + } + + export interface DeleteItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface DeleteItemResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DisplayPropertyIndexInfo { + /** The property name in the 'DisplayProperties' property to be indexed. */ + Name?: string; + /** The type of the property to be indexed. */ + Type?: string; + + } + + type DisplayPropertyType = "None" + + | "QueryDateTime" + | "QueryDouble" + | "QueryString" + | "SearchString"; + + export interface EntityKey { + /** Unique ID of the entity. */ + Id: string; + /** Entity type. See https://docs.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types */ + Type?: string; + + } + + export interface ExecuteInventoryOperationsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * The id of the entity's collection to perform this action on. (Default="default"). The number of inventory collections is + * unlimited. + */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** + * The Idempotency ID for this request. Idempotency IDs can be used to prevent operation replay in the medium term but will + * be garbage collected eventually. + */ + IdempotencyId?: string; + /** + * The operations to run transactionally. The operations will be executed in-order sequentially and will succeed or fail as + * a batch. Up to 50 operations can be added. + */ + Operations?: InventoryOperation[]; + + } + + export interface ExecuteInventoryOperationsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** The idempotency id used in the request. */ + IdempotencyId?: string; + /** The ids of the transactions that occurred as a result of the request. */ + TransactionIds?: string[]; + + } + + export interface ExecuteTransferOperationsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The inventory collection id the request is transferring from. (Default="default") */ + GivingCollectionId?: string; + /** The entity the request is transferring from. Set to the caller by default. */ + GivingEntity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + GivingETag?: string; + /** The idempotency id for the request. */ + IdempotencyId?: string; + /** + * The transfer operations to run transactionally. The operations will be executed in-order sequentially and will succeed + * or fail as a batch. Up to 50 operations can be added. + */ + Operations?: TransferInventoryItemsOperation[]; + /** The inventory collection id the request is transferring to. (Default="default") */ + ReceivingCollectionId?: string; + /** The entity the request is transferring to. Set to the caller by default. */ + ReceivingEntity?: EntityKey; + + } + + export interface ExecuteTransferOperationsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * ETags are used for concurrency checking when updating resources (before transferring from). This value will be empty if + * the operation has not completed yet. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + GivingETag?: string; + /** The ids of transactions that occurred as a result of the request's giving action. */ + GivingTransactionIds?: string[]; + /** The Idempotency ID for this request. */ + IdempotencyId?: string; + /** + * The transfer operation status. Possible values are 'InProgress' or 'Completed'. If the operation has completed, the + * response code will be 200. Otherwise, it will be 202. + */ + OperationStatus?: string; + /** + * The token that can be used to get the status of the transfer operation. This will only have a value if OperationStatus + * is 'InProgress'. + */ + OperationToken?: string; + /** + * ETags are used for concurrency checking when updating resources (before transferring to). This value will be empty if + * the operation has not completed yet. + */ + ReceivingETag?: string; + /** The ids of transactions that occurred as a result of the request's receiving action. */ + ReceivingTransactionIds?: string[]; + + } + + export interface FileConfig { + /** + * The set of content types that will be used for validation. Each content type can have a maximum character length of 40 + * and up to 128 types can be listed. + */ + ContentTypes?: string[]; + /** + * The set of tags that will be used for validation. Each tag can have a maximum character length of 32 and up to 1024 tags + * can be listed. + */ + Tags?: string[]; + + } + + export interface FilterOptions { + /** + * The OData filter utilized. Mutually exclusive with 'IncludeAllItems'. More info about Filter Complexity limits can be + * found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/search#limits + */ + Filter?: string; + /** The flag that overrides the filter and allows for returning all catalog items. Mutually exclusive with 'Filter'. */ + IncludeAllItems?: boolean; + + } + + export interface GetCatalogConfigRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + + } + + export interface GetCatalogConfigResponse extends PlayFabModule.IPlayFabResultCommon { + /** The catalog configuration. */ + Config?: CatalogConfig; + + } + + export interface GetDraftItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface GetDraftItemResponse extends PlayFabModule.IPlayFabResultCommon { + /** Full metadata of the catalog item requested. */ + Item?: CatalogItem; + + } + + export interface GetDraftItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** List of item alternate IDs. */ + AlternateIds?: CatalogAlternateId[]; + /** + * An opaque token used to retrieve the next page of items created by the caller, if any are available. Should be null on + * initial request. + */ + ContinuationToken?: string; + /** Number of items to retrieve. This value is optional. Default value is 10. */ + Count?: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** List of Item Ids. */ + Ids?: string[]; + + } + + export interface GetDraftItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + /** A set of items created by the entity. */ + Items?: CatalogItem[]; + + } + + export interface GetEntityDraftItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * An opaque token used to retrieve the next page of items created by the caller, if any are available. Should be null on + * initial request. + */ + ContinuationToken?: string; + /** Number of items to retrieve. This value is optional. Default value is 10. */ + Count: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * OData Filter to refine the items returned. CatalogItem properties 'type' can be used in the filter. For example: "type + * eq 'ugc'" + */ + Filter?: string; + + } + + export interface GetEntityDraftItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + /** A set of items created by the entity. */ + Items?: CatalogItem[]; + + } + + export interface GetEntityItemReviewRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface GetEntityItemReviewResponse extends PlayFabModule.IPlayFabResultCommon { + /** The review the entity submitted for the requested item. */ + Review?: Review; + + } + + export interface GetInventoryCollectionIdsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An opaque token used to retrieve the next page of collection ids, if any are available. */ + ContinuationToken?: string; + /** Number of items to retrieve. This value is optional. The default value is 10 */ + Count: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity the request is about. Set to the caller by default. */ + Entity?: EntityKey; + + } + + export interface GetInventoryCollectionIdsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The requested inventory collection ids. */ + CollectionIds?: string[]; + /** An opaque token used to retrieve the next page of collection ids, if any are available. */ + ContinuationToken?: string; + + } + + export interface GetInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** + * An opaque token used to retrieve the next page of items in the inventory, if any are available. Should be null on + * initial request. + */ + ContinuationToken?: string; + /** Number of items to retrieve. This value is optional. Maximum page size is 50. The default value is 10 */ + Count: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * OData Filter to refine the items returned. InventoryItem properties 'type', 'id', and 'stackId' can be used in the + * filter. For example: "type eq 'currency'" + */ + Filter?: string; + + } + + export interface GetInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** The requested inventory items. */ + Items?: InventoryItem[]; + + } + + export interface GetInventoryOperationStatusRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The token to get the status of the inventory operation. */ + OperationToken?: string; + + } + + export interface GetInventoryOperationStatusResponse extends PlayFabModule.IPlayFabResultCommon { + /** The inventory operation status. */ + OperationStatus?: string; + + } + + export interface GetItemContainersRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** + * An opaque token used to retrieve the next page of items in the inventory, if any are available. Should be null on + * initial request. + */ + ContinuationToken?: string; + /** Number of items to retrieve. This value is optional. Default value is 10. */ + Count: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface GetItemContainersResponse extends PlayFabModule.IPlayFabResultCommon { + /** List of Bundles and Stores containing the requested items. */ + Containers?: CatalogItem[]; + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + + } + + export interface GetItemModerationStateRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface GetItemModerationStateResponse extends PlayFabModule.IPlayFabResultCommon { + /** The current moderation state for the requested item. */ + State?: ModerationState; + + } + + export interface GetItemPublishStatusRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface GetItemPublishStatusResponse extends PlayFabModule.IPlayFabResultCommon { + /** High level status of the published item. */ + Result?: string; + /** Descriptive message about the current status of the publish. */ + StatusMessage?: string; + + } + + export interface GetItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface GetItemResponse extends PlayFabModule.IPlayFabResultCommon { + /** The item result. */ + Item?: CatalogItem; + + } + + export interface GetItemReviewsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + /** Number of items to retrieve. This value is optional. Default value is 10. */ + Count: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The unique ID of the item. */ + Id?: string; + /** + * An OData orderBy used to order the results of the query. Possible values are Helpfulness, Rating, and Submitted (For + * example: "Submitted desc") + */ + OrderBy?: string; + + } + + export interface GetItemReviewsResponse extends PlayFabModule.IPlayFabResultCommon { + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + /** The paginated set of results. */ + Reviews?: Review[]; + + } + + export interface GetItemReviewSummaryRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface GetItemReviewSummaryResponse extends PlayFabModule.IPlayFabResultCommon { + /** The least favorable review for this item. */ + LeastFavorableReview?: Review; + /** The most favorable review for this item. */ + MostFavorableReview?: Review; + /** The summary of ratings associated with this item. */ + Rating?: Rating; + /** The total number of reviews associated with this item. */ + ReviewsCount: number; + + } + + export interface GetItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** List of item alternate IDs. */ + AlternateIds?: CatalogAlternateId[]; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** List of Item Ids. */ + Ids?: string[]; + + } + + export interface GetItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** Metadata of set of items. */ + Items?: CatalogItem[]; + + } + + export interface GetTransactionHistoryRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** An opaque token used to retrieve the next page of items, if any are available. Should be null on initial request. */ + ContinuationToken?: string; + /** + * Number of items to retrieve. This value is optional. The default value is 10. The maximum value is 50, or 250 if + * response compression is enabled. + */ + Count: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * An OData filter used to refine the TransactionHistory. Transaction properties 'timestamp', 'transactionid', 'apiname' + * and 'operationtype' can be used in the filter. Properties 'transactionid', 'apiname', and 'operationtype' cannot be used + * together in a single request. The 'timestamp' property can be combined with 'apiname' or 'operationtype' in a single + * request. For example: "timestamp ge 2023-06-20T23:30Z" or "transactionid eq '10'" or "(timestamp ge 2023-06-20T23:30Z) + * and (apiname eq 'AddInventoryItems')". By default, a 6 month timespan from the current date is used. + */ + Filter?: string; + /** + * An OData orderby to order TransactionHistory results. The only supported values are 'timestamp asc' or 'timestamp desc'. + * Default orderby is 'timestamp asc' + */ + OrderBy?: string; + + } + + export interface GetTransactionHistoryResponse extends PlayFabModule.IPlayFabResultCommon { + /** An opaque token used to retrieve the next page of items, if any are available. Should be null on initial request. */ + ContinuationToken?: string; + /** The requested inventory transactions. */ + Transactions?: Transaction[]; + + } + + export interface GooglePlayProductPurchase { + /** The Product ID (SKU) of the InApp product purchased from the Google Play store. */ + ProductId?: string; + /** The token provided to the player's device when the product was purchased */ + Token?: string; + + } + + type HelpfulnessVote = "None" + + | "UnHelpful" + | "Helpful"; + + export interface Image { + /** The image unique ID. */ + Id?: string; + /** + * The client-defined tag associated with this image. Tags must be defined in the Catalog Config before being used in + * images + */ + Tag?: string; + /** Images can be defined as either a "thumbnail" or "screenshot". There can only be one "thumbnail" image per item. */ + Type?: string; + /** The URL for retrieval of the image. */ + Url?: string; + + } + + export interface ImageConfig { + /** + * The set of tags that will be used for validation. Each tag can have a maximum character length of 32 and up to 1024 tags + * can be listed. + */ + Tags?: string[]; + + } + + export interface InitialValues { + /** Game specific properties for display purposes. The Display Properties field has a 1000 byte limit. */ + DisplayProperties?: any; + + } + + export interface InventoryItem { + /** The amount of the item. */ + Amount?: number; + /** + * Game specific properties for display purposes. This is an arbitrary JSON blob. The Display Properties field has a 1000 + * byte limit. + */ + DisplayProperties?: any; + /** Only used for subscriptions. The date of when the item will expire in UTC. */ + ExpirationDate?: string; + /** The id of the item. This should correspond to the item id in the catalog. */ + Id?: string; + /** The stack id of the item. */ + StackId?: string; + /** Only used for subscriptions. The date of when the item started in UTC. */ + StartDate?: string; + /** The type of the item. This should correspond to the item type in the catalog. */ + Type?: string; + + } + + export interface InventoryItemReference { + /** The inventory item alternate id the request applies to. */ + AlternateId?: AlternateId; + /** The inventory item id the request applies to. */ + Id?: string; + /** The inventory stack id the request should redeem to. (Default="default") */ + StackId?: string; + + } + + export interface InventoryOperation { + /** The add operation. */ + Add?: AddInventoryItemsOperation; + /** The delete operation. */ + Delete?: DeleteInventoryItemsOperation; + /** The purchase operation. */ + Purchase?: PurchaseInventoryItemsOperation; + /** The subtract operation. */ + Subtract?: SubtractInventoryItemsOperation; + /** The transfer operation. */ + Transfer?: TransferInventoryItemsOperation; + /** The update operation. */ + Update?: UpdateInventoryItemsOperation; + + } + + export interface KeywordSet { + /** A list of localized keywords. */ + Values?: string[]; + + } + + export interface ModerationState { + /** The date and time this moderation state was last updated. */ + LastModifiedDate?: string; + /** The current stated reason for the associated item being moderated. */ + Reason?: string; + /** The current moderation status for the associated item. */ + Status?: string; + + } + + type ModerationStatus = "Unknown" + + | "AwaitingModeration" + | "Approved" + | "Rejected"; + + export interface 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. + */ + SegmentIds?: string[]; + + } + + export interface PublishDraftItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * ETag of the catalog item to published from the working catalog to the public catalog. Used for optimistic concurrency. + * If the provided ETag does not match the ETag in the current working catalog, the request will be rejected. If not + * provided, the current version of the document in the working catalog will be published. + */ + ETag?: string; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface PublishDraftItemResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + type PublishResult = "Unknown" + + | "Pending" + | "Succeeded" + | "Failed" + | "Canceled"; + + export interface PurchaseInventoryItemsOperation { + /** The amount to purchase. */ + Amount?: number; + /** + * Indicates whether stacks reduced to an amount of 0 during the operation should be deleted from the inventory. (Default = + * false) + */ + DeleteEmptyStacks: boolean; + /** The duration to purchase. */ + DurationInSeconds?: number; + /** The inventory item the operation applies to. */ + Item?: InventoryItemReference; + /** The values to apply to a stack newly created by this operation. */ + NewStackValues?: InitialValues; + /** + * The per-item price the item is expected to be purchased at. This must match a value configured in the Catalog or + * specified Store. + */ + PriceAmounts?: PurchasePriceAmount[]; + /** The id of the Store to purchase the item from. */ + StoreId?: string; + + } + + export interface PurchaseInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The amount to purchase. */ + Amount?: number; + /** + * The id of the entity's collection to perform this action on. (Default="default"). The number of inventory collections is + * unlimited. + */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Indicates whether stacks reduced to an amount of 0 during the request should be deleted from the inventory. + * (Default=false) + */ + DeleteEmptyStacks: boolean; + /** The duration to purchase. */ + DurationInSeconds?: number; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** + * The Idempotency ID for this request. Idempotency IDs can be used to prevent operation replay in the medium term but will + * be garbage collected eventually. + */ + IdempotencyId?: string; + /** The inventory item the request applies to. */ + Item?: InventoryItemReference; + /** The values to apply to a stack newly created by this request. */ + NewStackValues?: InitialValues; + /** + * The per-item price the item is expected to be purchased at. This must match a value configured in the Catalog or + * specified Store. + */ + PriceAmounts?: PurchasePriceAmount[]; + /** The id of the Store to purchase the item from. */ + StoreId?: string; + + } + + export interface PurchaseInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** The idempotency id used in the request. */ + IdempotencyId?: string; + /** The ids of transactions that occurred as a result of the request. */ + TransactionIds?: string[]; + + } + + export interface PurchaseOverride { + + } + + export interface PurchaseOverridesInfo { + + } + + export interface PurchasePriceAmount { + /** The amount of the inventory item to use in the purchase . */ + Amount: number; + /** The inventory item id to use in the purchase . */ + ItemId?: string; + /** The inventory stack id the to use in the purchase. Set to "default" by default */ + StackId?: string; + + } + + export interface Rating { + /** The average rating for this item. */ + Average?: number; + /** The total count of 1 star ratings for this item. */ + Count1Star?: number; + /** The total count of 2 star ratings for this item. */ + Count2Star?: number; + /** The total count of 3 star ratings for this item. */ + Count3Star?: number; + /** The total count of 4 star ratings for this item. */ + Count4Star?: number; + /** The total count of 5 star ratings for this item. */ + Count5Star?: number; + /** The total count of ratings for this item. */ + TotalCount?: number; + + } + + export interface RealMoneyPriceDetails { + /** The 'AppleAppStore' price amount per CurrencyCode. 'USD' supported only. */ + AppleAppStorePrices?: { [key: string]: number }; + /** The 'GooglePlay' price amount per CurrencyCode. 'USD' supported only. */ + GooglePlayPrices?: { [key: string]: number }; + /** The 'MicrosoftStore' price amount per CurrencyCode. 'USD' supported only. */ + MicrosoftStorePrices?: { [key: string]: number }; + /** The 'NintendoEShop' price amount per CurrencyCode. 'USD' supported only. */ + NintendoEShopPrices?: { [key: string]: number }; + /** The 'PlayStationStore' price amount per CurrencyCode. 'USD' supported only. */ + PlayStationStorePrices?: { [key: string]: number }; + /** The 'Steam' price amount per CurrencyCode. 'USD' supported only. */ + SteamPrices?: { [key: string]: number }; + + } + + export interface RedeemAppleAppStoreInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The receipt provided by the Apple marketplace upon successful purchase. */ + Receipt?: string; + + } + + export interface RedeemAppleAppStoreInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of failed redemptions from the external marketplace. */ + Failed?: RedemptionFailure[]; + /** The list of successful redemptions from the external marketplace. */ + Succeeded?: RedemptionSuccess[]; + /** The Transaction IDs associated with the inventory modifications */ + TransactionIds?: string[]; + + } + + export interface RedeemAppleAppStoreWithJwsInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The JWS representation of a transaction. */ + JWSTransactions: string[]; + + } + + export interface RedeemAppleAppStoreWithJwsInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of failed redemptions from the external marketplace. */ + Failed?: RedemptionFailure[]; + /** The list of successful redemptions from the external marketplace. */ + Succeeded?: RedemptionSuccess[]; + /** The Transaction IDs associated with the inventory modifications */ + TransactionIds?: string[]; + + } + + export interface RedeemGooglePlayInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The list of purchases to redeem */ + Purchases?: GooglePlayProductPurchase[]; + + } + + export interface RedeemGooglePlayInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of failed redemptions from the external marketplace. */ + Failed?: RedemptionFailure[]; + /** The list of successful redemptions from the external marketplace. */ + Succeeded?: RedemptionSuccess[]; + /** The Transaction IDs associated with the inventory modifications */ + TransactionIds?: string[]; + + } + + export interface RedeemMicrosoftStoreInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * Xbox Token used for delegated business partner authentication. Token provided by the Xbox Live SDK method + * GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). + */ + XboxToken?: string; + + } + + export interface RedeemMicrosoftStoreInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of failed redemptions from the external marketplace. */ + Failed?: RedemptionFailure[]; + /** The list of successful redemptions from the external marketplace. */ + Succeeded?: RedemptionSuccess[]; + /** The Transaction IDs associated with the inventory modifications */ + TransactionIds?: string[]; + + } + + export interface RedeemNintendoEShopInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The Nintendo provided token authorizing redemption */ + NintendoServiceAccountIdToken?: string; + + } + + export interface RedeemNintendoEShopInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of failed redemptions from the external marketplace. */ + Failed?: RedemptionFailure[]; + /** The list of successful redemptions from the external marketplace. */ + Succeeded?: RedemptionSuccess[]; + /** The Transaction IDs associated with the inventory modifications */ + TransactionIds?: string[]; + + } + + export interface RedeemPlayStationStoreInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Auth code returned by PlayStation :tm: Network OAuth system. */ + AuthorizationCode?: string; + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** Redirect URI supplied to PlayStation :tm: Network when requesting an auth code. */ + RedirectUri?: string; + /** Optional Service Label to pass into the request. */ + ServiceLabel?: string; + + } + + export interface RedeemPlayStationStoreInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of failed redemptions from the external marketplace. */ + Failed?: RedemptionFailure[]; + /** The list of successful redemptions from the external marketplace. */ + Succeeded?: RedemptionSuccess[]; + /** The Transaction IDs associated with the inventory modifications */ + TransactionIds?: string[]; + + } + + export interface RedeemSteamInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + + } + + export interface RedeemSteamInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of failed redemptions from the external marketplace. */ + Failed?: RedemptionFailure[]; + /** The list of successful redemptions from the external marketplace. */ + Succeeded?: RedemptionSuccess[]; + /** The Transaction IDs associated with the inventory modifications */ + TransactionIds?: string[]; + + } + + export interface RedemptionFailure { + /** The marketplace failure code. */ + FailureCode?: string; + /** The marketplace error details explaining why the offer failed to redeem. */ + FailureDetails?: string; + /** The Marketplace Alternate ID being redeemed. */ + MarketplaceAlternateId?: string; + /** The transaction id in the external marketplace. */ + MarketplaceTransactionId?: string; + + } + + export interface RedemptionSuccess { + /** The timestamp for when the redeem expired. */ + ExpirationTimestamp?: string; + /** The Marketplace Alternate ID being redeemed. */ + MarketplaceAlternateId?: string; + /** The transaction id in the external marketplace. */ + MarketplaceTransactionId?: string; + /** The timestamp for when the redeem was completed. */ + SuccessTimestamp: string; + + } + + export interface ReportItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** Category of concern for this report. */ + ConcernCategory?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + /** The string reason for this report. */ + Reason?: string; + + } + + export interface ReportItemResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface ReportItemReviewRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID of the item associated with the review. */ + AlternateId?: CatalogAlternateId; + /** The reason this review is being reported. */ + ConcernCategory?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The string ID of the item associated with the review. */ + ItemId?: string; + /** The string reason for this report. */ + Reason?: string; + /** The ID of the review to submit a report for. */ + ReviewId?: string; + + } + + export interface ReportItemReviewResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface Review { + /** The star rating associated with each selected category in this review. */ + CategoryRatings?: { [key: string]: number }; + /** The number of negative helpfulness votes for this review. */ + HelpfulNegative: number; + /** The number of positive helpfulness votes for this review. */ + HelpfulPositive: number; + /** Indicates whether the review author has the item installed. */ + IsInstalled: boolean; + /** The ID of the item being reviewed. */ + ItemId?: string; + /** The version of the item being reviewed. */ + ItemVersion?: string; + /** The locale for which this review was submitted in. */ + Locale?: string; + /** Star rating associated with this review. */ + Rating: number; + /** The ID of the author of the review. */ + ReviewerEntity?: EntityKey; + /** The ID of the review. */ + ReviewId?: string; + /** The full text of this review. */ + ReviewText?: string; + /** The date and time this review was last submitted. */ + Submitted: string; + /** The title of this review. */ + Title?: string; + + } + + export interface ReviewConfig { + /** A set of categories that can be applied toward ratings and reviews. */ + CategoryRatings?: CategoryRatingConfig[]; + + } + + export interface ReviewItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + /** The review to submit. */ + Review?: Review; + + } + + export interface ReviewItemResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface ReviewTakedown { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The ID of the item associated with the review to take down. */ + ItemId?: string; + /** The ID of the review to take down. */ + ReviewId?: string; + + } + + export interface SearchItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + /** Number of items to retrieve. This value is optional. Maximum page size is 50. Default value is 10. */ + Count: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * An OData filter used to refine the search query (For example: "type eq 'ugc'"). More info about Filter Complexity limits + * can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/search#limits + */ + Filter?: string; + /** The locale to be returned in the result. */ + Language?: string; + /** An OData orderBy used to order the results of the search query. For example: "rating/average asc" */ + OrderBy?: string; + /** The text to search for. */ + Search?: string; + /** + * An OData select query option used to augment the search results. If not defined, the default search result metadata will + * be returned. + */ + Select?: string; + /** The store to restrict the search request to. */ + Store?: StoreReference; + + } + + export interface SearchItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + /** The paginated set of results for the search query. */ + Items?: CatalogItem[]; + + } + + export interface SetItemModerationStateRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The unique ID of the item. */ + Id?: string; + /** The reason for the moderation state change for the associated item. */ + Reason?: string; + /** The status to set for the associated item. */ + Status?: string; + + } + + export interface SetItemModerationStateResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface StoreDetails { + /** The options for the filter in filter-based stores. These options are mutually exclusive with item references. */ + FilterOptions?: FilterOptions; + /** The permissions that control which players can purchase from the store. */ + Permissions?: Permissions; + /** The global prices utilized in the store. These options are mutually exclusive with price options in item references. */ + PriceOptionsOverride?: CatalogPriceOptionsOverride; + + } + + export interface StoreReference { + /** An alternate ID of the store. */ + AlternateId?: CatalogAlternateId; + /** The unique ID of the store. */ + Id?: string; + + } + + export interface SubmitItemReviewVoteRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID of the item associated with the review. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The string ID of the item associated with the review. */ + ItemId?: string; + /** The ID of the review to submit a helpfulness vote for. */ + ReviewId?: string; + /** The helpfulness vote of the review. */ + Vote?: string; + + } + + export interface SubmitItemReviewVoteResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface SubtractInventoryItemsOperation { + /** The amount to subtract from the current item amount. */ + Amount?: number; + /** + * Indicates whether stacks reduced to an amount of 0 during the request should be deleted from the inventory. (Default = + * false). + */ + DeleteEmptyStacks: boolean; + /** The duration to subtract from the current item expiration date. */ + DurationInSeconds?: number; + /** The inventory item the operation applies to. */ + Item?: InventoryItemReference; + + } + + export interface SubtractInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The amount to subtract for the current item. */ + Amount?: number; + /** + * The id of the entity's collection to perform this action on. (Default="default"). The number of inventory collections is + * unlimited. + */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Indicates whether stacks reduced to an amount of 0 during the request should be deleted from the inventory. + * (Default=false) + */ + DeleteEmptyStacks: boolean; + /** The duration to subtract from the current item expiration date. */ + DurationInSeconds?: number; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** + * The Idempotency ID for this request. Idempotency IDs can be used to prevent operation replay in the medium term but will + * be garbage collected eventually. + */ + IdempotencyId?: string; + /** The inventory item the request applies to. */ + Item?: InventoryItemReference; + + } + + export interface SubtractInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** The idempotency id used in the request. */ + IdempotencyId?: string; + /** The ids of transactions that occurred as a result of the request. */ + TransactionIds?: string[]; + + } + + export interface TakedownItemReviewsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The set of reviews to take down. */ + Reviews?: ReviewTakedown[]; + + } + + export interface TakedownItemReviewsResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface Transaction { + /** The API call that caused this transaction. */ + ApiName?: string; + /** Additional details about the transaction. Null if it was not a clawback operation. */ + ClawbackDetails?: TransactionClawbackDetails; + /** The custom tags associated with this transactions. */ + CustomTags?: { [key: string]: string | null }; + /** The type of item that the the operation occurred on. */ + ItemType?: string; + /** The operations that occurred. */ + Operations?: TransactionOperation[]; + /** The type of operation that was run. */ + OperationType?: string; + /** Additional details about the transaction. Null if it was not a purchase operation. */ + PurchaseDetails?: TransactionPurchaseDetails; + /** Additional details about the transaction. Null if it was not a redeem operation. */ + RedeemDetails?: TransactionRedeemDetails; + /** The time this transaction occurred in UTC. */ + Timestamp: string; + /** The id of the transaction. This should be treated like an opaque token. */ + TransactionId?: string; + /** Additional details about the transaction. Null if it was not a transfer operation. */ + TransferDetails?: TransactionTransferDetails; + + } + + export interface TransactionClawbackDetails { + /** The id of the clawed back operation. */ + TransactionIdClawedback?: string; + + } + + export interface TransactionOperation { + /** The amount of items in this transaction. */ + Amount?: number; + /** The duration modified in this transaction. */ + DurationInSeconds?: number; + /** The friendly id of the items in this transaction. */ + ItemFriendlyId?: string; + /** The item id of the items in this transaction. */ + ItemId?: string; + /** The type of item that the operation occurred on. */ + ItemType?: string; + /** The stack id of the items in this transaction. */ + StackId?: string; + /** The type of the operation that occurred. */ + Type?: string; + + } + + export interface TransactionPurchaseDetails { + /** The friendly id of the item that was purchased. */ + ItemFriendlyId?: string; + /** The id of the item that was purchased. */ + ItemId?: string; + /** The friendly id of the Store the item was purchased from or null. */ + StoreFriendlyId?: string; + /** The id of the Store the item was purchased from or null. */ + StoreId?: string; + + } + + export interface TransactionRedeemDetails { + /** The marketplace that the offer is being redeemed from. */ + Marketplace?: string; + /** The transaction Id returned from the marketplace. */ + MarketplaceTransactionId?: string; + /** The offer Id of the item being redeemed. */ + OfferId?: string; + + } + + export interface TransactionTransferDetails { + /** The collection id the items were transferred from or null if it was the current collection. */ + GivingCollectionId?: string; + /** The entity the items were transferred from or null if it was the current entity. */ + GivingEntity?: EntityKey; + /** The collection id the items were transferred to or null if it was the current collection. */ + ReceivingCollectionId?: string; + /** The entity the items were transferred to or null if it was the current entity. */ + ReceivingEntity?: EntityKey; + /** The id of the transfer that occurred. */ + TransferId?: string; + + } + + export interface TransferInventoryItemsOperation { + /** The amount to transfer. */ + Amount?: number; + /** + * Indicates whether stacks reduced to an amount of 0 during the operation should be deleted from the inventory. (Default = + * false) + */ + DeleteEmptyStacks: boolean; + /** The inventory item the operation is transferring from. */ + GivingItem?: InventoryItemReference; + /** The values to apply to a stack newly created by this operation. */ + NewStackValues?: InitialValues; + /** The inventory item the operation is transferring to. */ + ReceivingItem?: InventoryItemReference; + + } + + export interface TransferInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The amount to transfer . */ + Amount?: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Indicates whether stacks reduced to an amount of 0 during the request should be deleted from the inventory. (Default = + * false) + */ + DeleteEmptyStacks: boolean; + /** The inventory collection id the request is transferring from. (Default="default") */ + GivingCollectionId?: string; + /** The entity the request is transferring from. Set to the caller by default. */ + GivingEntity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources (before transferring from). More information about using + * ETags can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + GivingETag?: string; + /** The inventory item the request is transferring from. */ + GivingItem?: InventoryItemReference; + /** The idempotency id for the request. */ + IdempotencyId?: string; + /** The values to apply to a stack newly created by this request. */ + NewStackValues?: InitialValues; + /** The inventory collection id the request is transferring to. (Default="default") */ + ReceivingCollectionId?: string; + /** The entity the request is transferring to. Set to the caller by default. */ + ReceivingEntity?: EntityKey; + /** The inventory item the request is transferring to. */ + ReceivingItem?: InventoryItemReference; + + } + + export interface TransferInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * ETags are used for concurrency checking when updating resources (after transferring from). More information about using + * ETags can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + GivingETag?: string; + /** The ids of transactions that occurred as a result of the request's giving action. */ + GivingTransactionIds?: string[]; + /** The idempotency id for the request. */ + IdempotencyId?: string; + /** + * The transfer operation status. Possible values are 'InProgress' or 'Completed'. If the operation has completed, the + * response code will be 200. Otherwise, it will be 202. + */ + OperationStatus?: string; + /** + * The token that can be used to get the status of the transfer operation. This will only have a value if OperationStatus + * is 'InProgress'. + */ + OperationToken?: string; + /** The ids of transactions that occurred as a result of the request's receiving action. */ + ReceivingTransactionIds?: string[]; + + } + + export interface UpdateCatalogConfigRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The updated catalog configuration. */ + Config?: CatalogConfig; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + + } + + export interface UpdateCatalogConfigResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface UpdateDraftItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Updated metadata describing the catalog item to be updated. */ + Item?: CatalogItem; + /** Whether the item should be published immediately. This value is optional, defaults to false. */ + Publish: boolean; + + } + + export interface UpdateDraftItemResponse extends PlayFabModule.IPlayFabResultCommon { + /** Updated metadata describing the catalog item just updated. */ + Item?: CatalogItem; + + } + + export interface UpdateInventoryItemsOperation { + /** The inventory item to update with the specified values. */ + Item?: InventoryItem; + + } + + export interface UpdateInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * The id of the entity's collection to perform this action on. (Default="default"). The number of inventory collections is + * unlimited. + */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** + * The Idempotency ID for this request. Idempotency IDs can be used to prevent operation replay in the medium term but will + * be garbage collected eventually. + */ + IdempotencyId?: string; + /** The inventory item to update with the specified values. */ + Item?: InventoryItem; + + } + + export interface UpdateInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** The idempotency id used in the request. */ + IdempotencyId?: string; + /** The ids of transactions that occurred as a result of the request. */ + TransactionIds?: string[]; + + } + + export interface UploadInfo { + /** Name of the file to be uploaded. */ + FileName?: string; + + } + + export interface UploadUrlMetadata { + /** Name of the file for which this upload URL was requested. */ + FileName?: string; + /** Unique ID for the binary content to be uploaded to the target URL. */ + Id?: string; + /** URL for the binary content to be uploaded to. */ + Url?: string; + + } + + export interface UserGeneratedContentSpecificConfig { + /** The set of content types that will be used for validation. */ + ContentTypes?: string[]; + /** The set of tags that will be used for validation. */ + Tags?: string[]; + + } + + +} diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabEventsApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabEventsApi.d.ts index 2d9b9edf..6bcc412f 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabEventsApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabEventsApi.d.ts @@ -4,22 +4,193 @@ declare module PlayFabEventsModule { export interface IPlayFabEvents { ForgetAllCredentials(): void; + /** + * Creates a new telemetry key for the title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/createtelemetrykey + */ + CreateTelemetryKey(request: PlayFabEventsModels.CreateTelemetryKeyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes a Data Connection from a title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/deletedataconnection + */ + DeleteDataConnection(request: PlayFabEventsModels.DeleteDataConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes a telemetry key configured for the title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/deletetelemetrykey + */ + DeleteTelemetryKey(request: PlayFabEventsModels.DeleteTelemetryKeyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves a single Data Connection associated with a title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/getdataconnection + */ + GetDataConnection(request: PlayFabEventsModels.GetDataConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information about a telemetry key configured for the title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/gettelemetrykey + */ + GetTelemetryKey(request: PlayFabEventsModels.GetTelemetryKeyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the list of Data Connections associated with a title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/listdataconnections + */ + ListDataConnections(request: PlayFabEventsModels.ListDataConnectionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Lists all telemetry keys configured for the title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/listtelemetrykeys + */ + ListTelemetryKeys(request: PlayFabEventsModels.ListTelemetryKeysRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates or updates a Data Connection on a title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/setdataconnection + */ + SetDataConnection(request: PlayFabEventsModels.SetDataConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Sets a Data Connection for the title to either the active or deactivated state. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/setdataconnectionactive + */ + SetDataConnectionActive(request: PlayFabEventsModels.SetDataConnectionActiveRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Sets a telemetry key to the active or deactivated state. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/settelemetrykeyactive + */ + SetTelemetryKeyActive(request: PlayFabEventsModels.SetTelemetryKeyActiveRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Write batches of entity based events to PlayStream. The namespace of the Event must be 'custom' or start with 'custom.'. * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/writeevents */ - WriteEvents(request: PlayFabEventsModels.WriteEventsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WriteEvents(request: PlayFabEventsModels.WriteEventsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Write batches of entity based events to as Telemetry events (bypass PlayStream). The namespace must be 'custom' or start * with 'custom.' * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/writetelemetryevents */ - WriteTelemetryEvents(request: PlayFabEventsModels.WriteEventsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WriteTelemetryEvents(request: PlayFabEventsModels.WriteEventsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } declare module PlayFabEventsModels { + export interface CreateTelemetryKeyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** The name of the new key. Telemetry key names must be unique within the scope of the title. */ + KeyName: string; + + } + + export interface CreateTelemetryKeyResponse extends PlayFabModule.IPlayFabResultCommon { + /** Details about the newly created telemetry key. */ + NewKeyDetails?: TelemetryKeyDetails; + + } + + export interface DataConnectionAzureBlobSettings { + /** Name of the storage account. */ + AccountName?: string; + /** Name of the container. */ + ContainerName?: string; + /** Azure Entra Tenant Id. */ + TenantId?: string; + + } + + export interface DataConnectionAzureDataExplorerSettings { + /** The URI of the ADX cluster. */ + ClusterUri?: string; + /** The database to write to. */ + Database?: string; + /** The table to write to. */ + Table?: string; + + } + + export interface DataConnectionDetails { + /** Settings of the data connection. */ + ConnectionSettings: DataConnectionSettings; + /** Whether or not the connection is currently active. */ + IsActive: boolean; + /** The name of the data connection. */ + Name: string; + /** Current status of the data connection, if any. */ + Status?: DataConnectionStatusDetails; + /** The type of data connection. */ + Type: string; + + } + + type DataConnectionErrorState = "OK" + + | "Error"; + + export interface DataConnectionFabricKQLSettings { + /** The URI of the Fabric cluster. */ + ClusterUri?: string; + /** The database to write to. */ + Database?: string; + /** The table to write to. */ + Table?: string; + + } + + export interface DataConnectionSettings { + /** Settings if the type of connection is AzureBlobStorage. */ + AzureBlobSettings?: DataConnectionAzureBlobSettings; + /** Settings if the type of connection is AzureDataExplorer. */ + AzureDataExplorerSettings?: DataConnectionAzureDataExplorerSettings; + /** Settings if the type of connection is FabricKQL. */ + AzureFabricKQLSettings?: DataConnectionFabricKQLSettings; + + } + + export interface DataConnectionStatusDetails { + /** The name of the error affecting the data connection, if any. */ + Error?: string; + /** A description of the error affecting the data connection, if any. This may be empty for some errors. */ + ErrorMessage?: string; + /** The most recent time of the error affecting the data connection, if any. */ + MostRecentErrorTime?: string; + /** Indicates if the connection is in a normal state or error state. */ + State?: string; + + } + + type DataConnectionType = "AzureBlobStorage" + + | "AzureDataExplorer" + | "FabricKQL"; + + export interface DeleteDataConnectionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the data connection to delete. */ + Name: string; + + } + + export interface DeleteDataConnectionResponse extends PlayFabModule.IPlayFabResultCommon { + /** Indicates whether or not the connection was deleted as part of the request. */ + WasDeleted: boolean; + + } + + export interface DeleteTelemetryKeyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** The name of the key to delete. */ + KeyName: string; + + } + + export interface DeleteTelemetryKeyResponse extends PlayFabModule.IPlayFabResultCommon { + /** Indicates whether or not the key was deleted. If false, no key with that name existed. */ + WasKeyDeleted: boolean; + + } + export interface EntityKey { /** Unique ID of the entity. */ Id: string; @@ -61,10 +232,141 @@ declare module PlayFabEventsModels { } + export interface GetDataConnectionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the data connection to retrieve. */ + Name: string; + + } + + export interface GetDataConnectionResponse extends PlayFabModule.IPlayFabResultCommon { + /** The details of the queried Data Connection. */ + DataConnection?: DataConnectionDetails; + + } + + export interface GetTelemetryKeyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** The name of the key to retrieve. */ + KeyName: string; + + } + + export interface GetTelemetryKeyResponse extends PlayFabModule.IPlayFabResultCommon { + /** Details about the requested telemetry key. */ + KeyDetails?: TelemetryKeyDetails; + + } + + export interface ListDataConnectionsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + + } + + export interface ListDataConnectionsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of existing Data Connections. */ + DataConnections?: DataConnectionDetails[]; + + } + + export interface ListTelemetryKeysRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface ListTelemetryKeysResponse extends PlayFabModule.IPlayFabResultCommon { + /** The telemetry keys configured for the title. */ + KeyDetails?: TelemetryKeyDetails[]; + + } + + export interface SetDataConnectionActiveRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Whether to set the data connection to active (true) or deactivated (false). */ + Active: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the data connection to update. */ + Name: string; + + } + + export interface SetDataConnectionActiveResponse extends PlayFabModule.IPlayFabResultCommon { + /** The most current details about the data connection that was to be updated. */ + DataConnection?: DataConnectionDetails; + /** + * Indicates whether or not the data connection was updated. If false, the data connection was already in the desired + * state. + */ + WasUpdated: boolean; + + } + + export interface SetDataConnectionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Settings of the data connection. */ + ConnectionSettings: DataConnectionSettings; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Whether or not the connection is currently active. */ + IsActive: boolean; + /** The name of the data connection to update or create. */ + Name: string; + /** The type of data connection. */ + Type: string; + + } + + export interface SetDataConnectionResponse extends PlayFabModule.IPlayFabResultCommon { + /** The details of the Data Connection to be created or updated. */ + DataConnection?: DataConnectionDetails; + + } + + export interface SetTelemetryKeyActiveRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Whether to set the key to active (true) or deactivated (false). */ + Active: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** The name of the key to update. */ + KeyName: string; + + } + + export interface SetTelemetryKeyActiveResponse extends PlayFabModule.IPlayFabResultCommon { + /** The most current details about the telemetry key that was to be updated. */ + KeyDetails?: TelemetryKeyDetails; + /** Indicates whether or not the key was updated. If false, the key was already in the desired state. */ + WasKeyUpdated: boolean; + + } + + export interface TelemetryKeyDetails { + /** When the key was created. */ + CreateTime: string; + /** Whether or not the key is currently active. Deactivated keys cannot be used for telemetry ingestion. */ + IsActive: boolean; + /** The key that can be distributed to clients for use during telemetry ingestion. */ + KeyValue?: string; + /** When the key was last updated. */ + LastUpdateTime: string; + /** The name of the key. Telemetry key names are unique within the scope of the title. */ + Name?: string; + + } + export interface WriteEventsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Collection of events to write to PlayStream. */ + /** The collection of events to write. Up to 200 events can be written per request. */ Events: EventContents[]; } diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabExperimentationApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabExperimentationApi.d.ts index 1c557cf1..07e0c851 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabExperimentationApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabExperimentationApi.d.ts @@ -8,73 +8,74 @@ declare module PlayFabExperimentationModule { * Creates a new experiment exclusion group for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/createexclusiongroup */ - CreateExclusionGroup(request: PlayFabExperimentationModels.CreateExclusionGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateExclusionGroup(request: PlayFabExperimentationModels.CreateExclusionGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a new experiment for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/createexperiment */ - CreateExperiment(request: PlayFabExperimentationModels.CreateExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateExperiment(request: PlayFabExperimentationModels.CreateExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes an existing exclusion group for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/deleteexclusiongroup */ - DeleteExclusionGroup(request: PlayFabExperimentationModels.DeleteExclusionGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteExclusionGroup(request: PlayFabExperimentationModels.DeleteExclusionGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes an existing experiment for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/deleteexperiment */ - DeleteExperiment(request: PlayFabExperimentationModels.DeleteExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteExperiment(request: PlayFabExperimentationModels.DeleteExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the details of all exclusion groups for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/getexclusiongroups */ - GetExclusionGroups(request: PlayFabExperimentationModels.GetExclusionGroupsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetExclusionGroups(request: PlayFabExperimentationModels.GetExclusionGroupsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the details of all exclusion groups for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/getexclusiongrouptraffic */ - GetExclusionGroupTraffic(request: PlayFabExperimentationModels.GetExclusionGroupTrafficRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetExclusionGroupTraffic(request: PlayFabExperimentationModels.GetExclusionGroupTrafficRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the details of all experiments for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/getexperiments */ - GetExperiments(request: PlayFabExperimentationModels.GetExperimentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetExperiments(request: PlayFabExperimentationModels.GetExperimentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the latest scorecard of the experiment for the title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/getlatestscorecard */ - GetLatestScorecard(request: PlayFabExperimentationModels.GetLatestScorecardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLatestScorecard(request: PlayFabExperimentationModels.GetLatestScorecardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the treatment assignments for a player for every running experiment in the title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/gettreatmentassignment */ - GetTreatmentAssignment(request: PlayFabExperimentationModels.GetTreatmentAssignmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTreatmentAssignment(request: PlayFabExperimentationModels.GetTreatmentAssignmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Starts an existing experiment for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/startexperiment */ - StartExperiment(request: PlayFabExperimentationModels.StartExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + StartExperiment(request: PlayFabExperimentationModels.StartExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Stops an existing experiment for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/stopexperiment */ - StopExperiment(request: PlayFabExperimentationModels.StopExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + StopExperiment(request: PlayFabExperimentationModels.StopExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates an existing exclusion group for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/updateexclusiongroup */ - UpdateExclusionGroup(request: PlayFabExperimentationModels.UpdateExclusionGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateExclusionGroup(request: PlayFabExperimentationModels.UpdateExclusionGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates an existing experiment for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/updateexperiment */ - UpdateExperiment(request: PlayFabExperimentationModels.UpdateExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateExperiment(request: PlayFabExperimentationModels.UpdateExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } declare module PlayFabExperimentationModels { type AnalysisTaskState = "Waiting" + | "ReadyForSubmission" | "SubmittingToPipeline" | "Running" @@ -211,11 +212,13 @@ declare module PlayFabExperimentationModels { } type ExperimentState = "New" + | "Started" | "Stopped" | "Deleted"; type ExperimentType = "Active" + | "Snapshot"; export interface GetExclusionGroupsRequest extends PlayFabModule.IPlayFabRequestCommon { @@ -273,7 +276,7 @@ declare module PlayFabExperimentationModels { export interface GetTreatmentAssignmentRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; } diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabGroupsApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabGroupsApi.d.ts index cca5d55b..2ef182c1 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabGroupsApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabGroupsApi.d.ts @@ -8,127 +8,127 @@ declare module PlayFabGroupsModule { * Accepts an outstanding invitation to to join a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/acceptgroupapplication */ - AcceptGroupApplication(request: PlayFabGroupsModels.AcceptGroupApplicationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AcceptGroupApplication(request: PlayFabGroupsModels.AcceptGroupApplicationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Accepts an invitation to join a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/acceptgroupinvitation */ - AcceptGroupInvitation(request: PlayFabGroupsModels.AcceptGroupInvitationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AcceptGroupInvitation(request: PlayFabGroupsModels.AcceptGroupInvitationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds members to a group or role. * https://docs.microsoft.com/rest/api/playfab/groups/groups/addmembers */ - AddMembers(request: PlayFabGroupsModels.AddMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddMembers(request: PlayFabGroupsModels.AddMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Applies to join a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/applytogroup */ - ApplyToGroup(request: PlayFabGroupsModels.ApplyToGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ApplyToGroup(request: PlayFabGroupsModels.ApplyToGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Blocks a list of entities from joining a group. * https://docs.microsoft.com/rest/api/playfab/groups/groups/blockentity */ - BlockEntity(request: PlayFabGroupsModels.BlockEntityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + BlockEntity(request: PlayFabGroupsModels.BlockEntityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Changes the role membership of a list of entities from one role to another. * https://docs.microsoft.com/rest/api/playfab/groups/groups/changememberrole */ - ChangeMemberRole(request: PlayFabGroupsModels.ChangeMemberRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ChangeMemberRole(request: PlayFabGroupsModels.ChangeMemberRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a new group. * https://docs.microsoft.com/rest/api/playfab/groups/groups/creategroup */ - CreateGroup(request: PlayFabGroupsModels.CreateGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateGroup(request: PlayFabGroupsModels.CreateGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a new group role. * https://docs.microsoft.com/rest/api/playfab/groups/groups/createrole */ - CreateRole(request: PlayFabGroupsModels.CreateGroupRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateRole(request: PlayFabGroupsModels.CreateGroupRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a group and all roles, invitations, join requests, and blocks associated with it. * https://docs.microsoft.com/rest/api/playfab/groups/groups/deletegroup */ - DeleteGroup(request: PlayFabGroupsModels.DeleteGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteGroup(request: PlayFabGroupsModels.DeleteGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes an existing role in a group. * https://docs.microsoft.com/rest/api/playfab/groups/groups/deleterole */ - DeleteRole(request: PlayFabGroupsModels.DeleteRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteRole(request: PlayFabGroupsModels.DeleteRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets information about a group and its roles * https://docs.microsoft.com/rest/api/playfab/groups/groups/getgroup */ - GetGroup(request: PlayFabGroupsModels.GetGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetGroup(request: PlayFabGroupsModels.GetGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Invites a player to join a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/invitetogroup */ - InviteToGroup(request: PlayFabGroupsModels.InviteToGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + InviteToGroup(request: PlayFabGroupsModels.InviteToGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Checks to see if an entity is a member of a group or role within the group * https://docs.microsoft.com/rest/api/playfab/groups/groups/ismember */ - IsMember(request: PlayFabGroupsModels.IsMemberRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + IsMember(request: PlayFabGroupsModels.IsMemberRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all outstanding requests to join a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/listgroupapplications */ - ListGroupApplications(request: PlayFabGroupsModels.ListGroupApplicationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListGroupApplications(request: PlayFabGroupsModels.ListGroupApplicationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all entities blocked from joining a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/listgroupblocks */ - ListGroupBlocks(request: PlayFabGroupsModels.ListGroupBlocksRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListGroupBlocks(request: PlayFabGroupsModels.ListGroupBlocksRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all outstanding invitations for a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/listgroupinvitations */ - ListGroupInvitations(request: PlayFabGroupsModels.ListGroupInvitationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListGroupInvitations(request: PlayFabGroupsModels.ListGroupInvitationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all members for a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/listgroupmembers */ - ListGroupMembers(request: PlayFabGroupsModels.ListGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListGroupMembers(request: PlayFabGroupsModels.ListGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all groups and roles for an entity * https://docs.microsoft.com/rest/api/playfab/groups/groups/listmembership */ - ListMembership(request: PlayFabGroupsModels.ListMembershipRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListMembership(request: PlayFabGroupsModels.ListMembershipRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all outstanding invitations and group applications for an entity * https://docs.microsoft.com/rest/api/playfab/groups/groups/listmembershipopportunities */ - ListMembershipOpportunities(request: PlayFabGroupsModels.ListMembershipOpportunitiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListMembershipOpportunities(request: PlayFabGroupsModels.ListMembershipOpportunitiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes an application to join a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/removegroupapplication */ - RemoveGroupApplication(request: PlayFabGroupsModels.RemoveGroupApplicationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveGroupApplication(request: PlayFabGroupsModels.RemoveGroupApplicationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes an invitation join a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/removegroupinvitation */ - RemoveGroupInvitation(request: PlayFabGroupsModels.RemoveGroupInvitationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveGroupInvitation(request: PlayFabGroupsModels.RemoveGroupInvitationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes members from a group. * https://docs.microsoft.com/rest/api/playfab/groups/groups/removemembers */ - RemoveMembers(request: PlayFabGroupsModels.RemoveMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveMembers(request: PlayFabGroupsModels.RemoveMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unblocks a list of entities from joining a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/unblockentity */ - UnblockEntity(request: PlayFabGroupsModels.UnblockEntityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnblockEntity(request: PlayFabGroupsModels.UnblockEntityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates non-membership data about a group. * https://docs.microsoft.com/rest/api/playfab/groups/groups/updategroup */ - UpdateGroup(request: PlayFabGroupsModels.UpdateGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateGroup(request: PlayFabGroupsModels.UpdateGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates metadata about a role. * https://docs.microsoft.com/rest/api/playfab/groups/groups/updaterole */ - UpdateRole(request: PlayFabGroupsModels.UpdateGroupRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateRole(request: PlayFabGroupsModels.UpdateGroupRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } @@ -138,8 +138,8 @@ declare module PlayFabGroupsModels { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** - * Optional. Type of the entity to accept as. If specified, must be the same entity as the claimant or an entity that is a - * child of the claimant entity. Defaults to the claimant entity. + * Type of the entity to accept as. Must be the same entity as the claimant or an entity that is a child of the claimant + * entity. */ Entity: EntityKey; /** The identifier of the group */ @@ -150,7 +150,7 @@ declare module PlayFabGroupsModels { export interface AcceptGroupInvitationRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The identifier of the group */ Group: EntityKey; @@ -177,7 +177,7 @@ declare module PlayFabGroupsModels { AutoAcceptOutstandingInvite?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The identifier of the group */ Group: EntityKey; @@ -227,7 +227,7 @@ declare module PlayFabGroupsModels { export interface CreateGroupRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The name of the group. This is unique at the title level by default. */ GroupName: string; @@ -259,7 +259,7 @@ declare module PlayFabGroupsModels { Group: EntityKey; /** * The ID of the role. This must be unique within the group and cannot be changed. Role IDs must be between 1 and 64 - * characters long. + * characters long and are restricted to a-Z, A-Z, 0-9, '(', ')', '_', '-' and '.'. */ RoleId: string; /** @@ -519,7 +519,7 @@ declare module PlayFabGroupsModels { export interface ListMembershipOpportunitiesRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; } @@ -535,7 +535,7 @@ declare module PlayFabGroupsModels { export interface ListMembershipRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; } @@ -547,6 +547,7 @@ declare module PlayFabGroupsModels { } type OperationTypes = "Created" + | "Updated" | "Deleted" | "None"; @@ -599,9 +600,10 @@ declare module PlayFabGroupsModels { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** - * Optional field used for concurrency control. By specifying the previously returned value of ProfileVersion from the - * GetGroup API, you can ensure that the group data update will only be performed if the group has not been updated by any - * other clients since the version you last loaded. + * Optional field used for concurrency control. By specifying the previously returned ProfileVersion value from the + * GetGroup API, you can ensure that the group data update is performed only if the group has not been updated since you + * last loaded that version. If the same group has been updated, the requested update will not occur and the returned + * SetResult value will be None. */ ExpectedProfileVersion?: number; /** The identifier of the group */ @@ -627,9 +629,10 @@ declare module PlayFabGroupsModels { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** - * Optional field used for concurrency control. By specifying the previously returned value of ProfileVersion from the - * GetGroup API, you can ensure that the group data update will only be performed if the group has not been updated by any - * other clients since the version you last loaded. + * Optional field used for concurrency control. By specifying the previously returned ProfileVersion value from the + * GetGroup API, you can ensure that the group role update is performed only if the group has not been updated since you + * last loaded that version. If the same group has been updated, the requested update will not occur and the returned + * SetResult value will be None. */ ExpectedProfileVersion?: number; /** The identifier of the group */ diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabInsightsApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabInsightsApi.d.ts index b3dedede..c9389833 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabInsightsApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabInsightsApi.d.ts @@ -9,33 +9,33 @@ declare module PlayFabInsightsModule { * performance and data storage retention limits. * https://docs.microsoft.com/rest/api/playfab/insights/analytics/getdetails */ - GetDetails(request: PlayFabInsightsModels.InsightsEmptyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetDetails(request: PlayFabInsightsModels.InsightsEmptyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the range of allowed values for performance and data storage retention values as well as the submeter details * for each performance level. * https://docs.microsoft.com/rest/api/playfab/insights/analytics/getlimits */ - GetLimits(request: PlayFabInsightsModels.InsightsEmptyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLimits(request: PlayFabInsightsModels.InsightsEmptyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the status of a SetPerformance or SetStorageRetention operation. * https://docs.microsoft.com/rest/api/playfab/insights/analytics/getoperationstatus */ - GetOperationStatus(request: PlayFabInsightsModels.InsightsGetOperationStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetOperationStatus(request: PlayFabInsightsModels.InsightsGetOperationStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets a list of pending SetPerformance and/or SetStorageRetention operations for the title. * https://docs.microsoft.com/rest/api/playfab/insights/analytics/getpendingoperations */ - GetPendingOperations(request: PlayFabInsightsModels.InsightsGetPendingOperationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPendingOperations(request: PlayFabInsightsModels.InsightsGetPendingOperationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the Insights performance level value for the title. * https://docs.microsoft.com/rest/api/playfab/insights/analytics/setperformance */ - SetPerformance(request: PlayFabInsightsModels.InsightsSetPerformanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetPerformance(request: PlayFabInsightsModels.InsightsSetPerformanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the Insights data storage retention days value for the title. * https://docs.microsoft.com/rest/api/playfab/insights/analytics/setstorageretention */ - SetStorageRetention(request: PlayFabInsightsModels.InsightsSetStorageRetentionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetStorageRetention(request: PlayFabInsightsModels.InsightsSetStorageRetentionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabLocalizationApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabLocalizationApi.d.ts index 4f46491e..f6dc8f6f 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabLocalizationApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabLocalizationApi.d.ts @@ -8,7 +8,7 @@ declare module PlayFabLocalizationModule { * Retrieves the list of allowed languages, only accessible by title entities * https://docs.microsoft.com/rest/api/playfab/localization/localization/getlanguagelist */ - GetLanguageList(request: PlayFabLocalizationModels.GetLanguageListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLanguageList(request: PlayFabLocalizationModels.GetLanguageListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabMatchmakerApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabMatchmakerApi.d.ts deleted file mode 100644 index 7f388f21..00000000 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabMatchmakerApi.d.ts +++ /dev/null @@ -1,216 +0,0 @@ -/// - -declare module PlayFabMatchmakerModule { - export interface IPlayFabMatchmaker { - ForgetAllCredentials(): void; - - /** - * Validates a user with the PlayFab service - * https://docs.microsoft.com/rest/api/playfab/matchmaker/matchmaking/authuser - */ - AuthUser(request: PlayFabMatchmakerModels.AuthUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Informs the PlayFab game server hosting service that the indicated user has joined the Game Server Instance specified - * https://docs.microsoft.com/rest/api/playfab/matchmaker/matchmaking/playerjoined - */ - PlayerJoined(request: PlayFabMatchmakerModels.PlayerJoinedRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Informs the PlayFab game server hosting service that the indicated user has left the Game Server Instance specified - * https://docs.microsoft.com/rest/api/playfab/matchmaker/matchmaking/playerleft - */ - PlayerLeft(request: PlayFabMatchmakerModels.PlayerLeftRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Instructs the PlayFab game server hosting service to instantiate a new Game Server Instance - * https://docs.microsoft.com/rest/api/playfab/matchmaker/matchmaking/startgame - */ - StartGame(request: PlayFabMatchmakerModels.StartGameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Retrieves the relevant details for a specified user, which the external match-making service can then use to compute - * effective matches - * https://docs.microsoft.com/rest/api/playfab/matchmaker/matchmaking/userinfo - */ - UserInfo(request: PlayFabMatchmakerModels.UserInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - - } -} - -declare module PlayFabMatchmakerModels { - export interface AuthUserRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Session Ticket provided by the client. */ - AuthorizationTicket: string; - - } - - export interface AuthUserResponse extends PlayFabModule.IPlayFabResultCommon { - /** Boolean indicating if the user has been authorized to use the external match-making service. */ - Authorized: boolean; - /** PlayFab unique identifier of the account that has been authorized. */ - PlayFabId?: string; - - } - - export interface ItemInstance { - /** Game specific comment associated with this instance when it was added to the user inventory. */ - Annotation?: string; - /** Array of unique items that were awarded when this catalog item was purchased. */ - BundleContents?: string[]; - /** - * Unique identifier for the parent inventory item, as defined in the catalog, for object which were added from a bundle or - * container. - */ - BundleParent?: string; - /** Catalog version for the inventory item, when this instance was created. */ - CatalogVersion?: string; - /** - * A set of custom key-value pairs on the instance of the inventory item, which is not to be confused with the catalog - * item's custom data. - */ - CustomData?: { [key: string]: string | null }; - /** CatalogItem.DisplayName at the time this item was purchased. */ - DisplayName?: string; - /** Timestamp for when this instance will expire. */ - Expiration?: string; - /** Class name for the inventory item, as defined in the catalog. */ - ItemClass?: string; - /** Unique identifier for the inventory item, as defined in the catalog. */ - ItemId?: string; - /** Unique item identifier for this specific instance of the item. */ - ItemInstanceId?: string; - /** Timestamp for when this instance was purchased. */ - PurchaseDate?: string; - /** Total number of remaining uses, if this is a consumable item. */ - RemainingUses?: number; - /** Currency type for the cost of the catalog item. Not available when granting items. */ - UnitCurrency?: string; - /** Cost of the catalog item in the given currency. Not available when granting items. */ - UnitPrice: number; - /** The number of uses that were added or removed to this item in this call. */ - UsesIncrementedBy?: number; - - } - - export interface PlayerJoinedRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** - * Unique identifier of the Game Server Instance the user is joining. This must be a Game Server Instance started with the - * Matchmaker/StartGame API. - */ - LobbyId: string; - /** PlayFab unique identifier for the player joining. */ - PlayFabId: string; - - } - - export interface PlayerJoinedResponse extends PlayFabModule.IPlayFabResultCommon { - - } - - export interface PlayerLeftRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** - * Unique identifier of the Game Server Instance the user is leaving. This must be a Game Server Instance started with the - * Matchmaker/StartGame API. - */ - LobbyId: string; - /** PlayFab unique identifier for the player leaving. */ - PlayFabId: string; - - } - - export interface PlayerLeftResponse extends PlayFabModule.IPlayFabResultCommon { - - } - - type Region = "USCentral" - | "USEast" - | "EUWest" - | "Singapore" - | "Japan" - | "Brazil" - | "Australia"; - - export interface StartGameRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Unique identifier of the previously uploaded build executable which is to be started. */ - Build: string; - /** Custom command line argument when starting game server process. */ - CustomCommandLineData?: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** - * HTTP endpoint URL for receiving game status events, if using an external matchmaker. When the game ends, PlayFab will - * make a POST request to this URL with the X-SecretKey header set to the value of the game's secret and an - * application/json body of { "EventName": "game_ended", "GameID": "" }. - */ - ExternalMatchmakerEventEndpoint: string; - /** Game mode for this Game Server Instance. */ - GameMode: string; - /** Region with which to associate the server, for filtering. */ - Region: string; - - } - - export interface StartGameResponse extends PlayFabModule.IPlayFabResultCommon { - /** Unique identifier for the game/lobby in the new Game Server Instance. */ - GameID?: string; - /** IPV4 address of the server */ - ServerIPV4Address?: string; - /** IPV6 address of the new Game Server Instance. */ - ServerIPV6Address?: string; - /** Port number for communication with the Game Server Instance. */ - ServerPort: number; - /** Public DNS name (if any) of the server */ - ServerPublicDNSName?: string; - - } - - export interface UserInfoRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** - * Minimum catalog version for which data is requested (filters the results to only contain inventory items which have a - * catalog version of this or higher). - */ - MinCatalogVersion: number; - /** PlayFab unique identifier of the user whose information is being requested. */ - PlayFabId: string; - - } - - export interface UserInfoResponse extends PlayFabModule.IPlayFabResultCommon { - /** Array of inventory items in the user's current inventory. */ - Inventory?: ItemInstance[]; - /** Boolean indicating whether the user is a developer. */ - IsDeveloper: boolean; - /** PlayFab unique identifier of the user whose information was requested. */ - PlayFabId?: string; - /** Steam unique identifier, if the user has an associated Steam account. */ - SteamId?: string; - /** Title specific display name, if set. */ - TitleDisplayName?: string; - /** PlayFab unique user name. */ - Username?: string; - /** Array of virtual currency balance(s) belonging to the user. */ - VirtualCurrency?: { [key: string]: number }; - /** Array of remaining times and timestamps for virtual currencies. */ - VirtualCurrencyRechargeTimes?: { [key: string]: VirtualCurrencyRechargeTime }; - - } - - export interface VirtualCurrencyRechargeTime { - /** - * Maximum value to which the regenerating currency will automatically increment. Note that it can exceed this value - * through use of the AddUserVirtualCurrency API call. However, it will not regenerate automatically until it has fallen - * below this value. - */ - RechargeMax: number; - /** Server timestamp in UTC indicating the next time the virtual currency will be incremented. */ - RechargeTime: string; - /** Time remaining (in seconds) before the next recharge increment of the virtual currency. */ - SecondsToRecharge: number; - - } - - -} diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabMultiplayerApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabMultiplayerApi.d.ts index 81b341d8..d2ff0a24 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabMultiplayerApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabMultiplayerApi.d.ts @@ -8,334 +8,458 @@ declare module PlayFabMultiplayerModule { * Cancel all active tickets the player is a member of in a given queue. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/cancelallmatchmakingticketsforplayer */ - CancelAllMatchmakingTicketsForPlayer(request: PlayFabMultiplayerModels.CancelAllMatchmakingTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CancelAllMatchmakingTicketsForPlayer(request: PlayFabMultiplayerModels.CancelAllMatchmakingTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Cancel all active backfill tickets the player is a member of in a given queue. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/cancelallserverbackfillticketsforplayer */ - CancelAllServerBackfillTicketsForPlayer(request: PlayFabMultiplayerModels.CancelAllServerBackfillTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CancelAllServerBackfillTicketsForPlayer(request: PlayFabMultiplayerModels.CancelAllServerBackfillTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Cancel a matchmaking ticket. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/cancelmatchmakingticket */ - CancelMatchmakingTicket(request: PlayFabMultiplayerModels.CancelMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CancelMatchmakingTicket(request: PlayFabMultiplayerModels.CancelMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Cancel a server backfill ticket. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/cancelserverbackfillticket */ - CancelServerBackfillTicket(request: PlayFabMultiplayerModels.CancelServerBackfillTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CancelServerBackfillTicket(request: PlayFabMultiplayerModels.CancelServerBackfillTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a multiplayer server build alias. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/createbuildalias */ - CreateBuildAlias(request: PlayFabMultiplayerModels.CreateBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateBuildAlias(request: PlayFabMultiplayerModels.CreateBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a multiplayer server build with a custom container. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/createbuildwithcustomcontainer */ - CreateBuildWithCustomContainer(request: PlayFabMultiplayerModels.CreateBuildWithCustomContainerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateBuildWithCustomContainer(request: PlayFabMultiplayerModels.CreateBuildWithCustomContainerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a multiplayer server build with a managed container. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/createbuildwithmanagedcontainer */ - CreateBuildWithManagedContainer(request: PlayFabMultiplayerModels.CreateBuildWithManagedContainerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateBuildWithManagedContainer(request: PlayFabMultiplayerModels.CreateBuildWithManagedContainerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a multiplayer server build with the server running as a process. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/createbuildwithprocessbasedserver */ - CreateBuildWithProcessBasedServer(request: PlayFabMultiplayerModels.CreateBuildWithProcessBasedServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateBuildWithProcessBasedServer(request: PlayFabMultiplayerModels.CreateBuildWithProcessBasedServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Create a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/createlobby + */ + CreateLobby(request: PlayFabMultiplayerModels.CreateLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Create a matchmaking ticket as a client. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/creatematchmakingticket */ - CreateMatchmakingTicket(request: PlayFabMultiplayerModels.CreateMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateMatchmakingTicket(request: PlayFabMultiplayerModels.CreateMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a remote user to log on to a VM for a multiplayer server build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/createremoteuser */ - CreateRemoteUser(request: PlayFabMultiplayerModels.CreateRemoteUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateRemoteUser(request: PlayFabMultiplayerModels.CreateRemoteUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Create a backfill matchmaking ticket as a server. A backfill ticket represents an ongoing game. The matchmaking service * automatically starts matching the backfill ticket against other matchmaking tickets. Backfill tickets cannot match with * other backfill tickets. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/createserverbackfillticket */ - CreateServerBackfillTicket(request: PlayFabMultiplayerModels.CreateServerBackfillTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateServerBackfillTicket(request: PlayFabMultiplayerModels.CreateServerBackfillTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Create a matchmaking ticket as a server. The matchmaking service automatically starts matching the ticket against other * matchmaking tickets. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/createservermatchmakingticket */ - CreateServerMatchmakingTicket(request: PlayFabMultiplayerModels.CreateServerMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateServerMatchmakingTicket(request: PlayFabMultiplayerModels.CreateServerMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a request to change a title's multiplayer server quotas. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/createtitlemultiplayerserversquotachange */ - CreateTitleMultiplayerServersQuotaChange(request: PlayFabMultiplayerModels.CreateTitleMultiplayerServersQuotaChangeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateTitleMultiplayerServersQuotaChange(request: PlayFabMultiplayerModels.CreateTitleMultiplayerServersQuotaChangeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a multiplayer server game asset for a title. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deleteasset */ - DeleteAsset(request: PlayFabMultiplayerModels.DeleteAssetRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteAsset(request: PlayFabMultiplayerModels.DeleteAssetRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a multiplayer server build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deletebuild */ - DeleteBuild(request: PlayFabMultiplayerModels.DeleteBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteBuild(request: PlayFabMultiplayerModels.DeleteBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a multiplayer server build alias. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deletebuildalias */ - DeleteBuildAlias(request: PlayFabMultiplayerModels.DeleteBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteBuildAlias(request: PlayFabMultiplayerModels.DeleteBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes a multiplayer server build's region. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deletebuildregion */ - DeleteBuildRegion(request: PlayFabMultiplayerModels.DeleteBuildRegionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteBuildRegion(request: PlayFabMultiplayerModels.DeleteBuildRegionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a multiplayer server game certificate. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deletecertificate */ - DeleteCertificate(request: PlayFabMultiplayerModels.DeleteCertificateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteCertificate(request: PlayFabMultiplayerModels.DeleteCertificateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a container image repository. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deletecontainerimagerepository */ - DeleteContainerImageRepository(request: PlayFabMultiplayerModels.DeleteContainerImageRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteContainerImageRepository(request: PlayFabMultiplayerModels.DeleteContainerImageRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Delete a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/deletelobby + */ + DeleteLobby(request: PlayFabMultiplayerModels.DeleteLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a remote user to log on to a VM for a multiplayer server build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deleteremoteuser */ - DeleteRemoteUser(request: PlayFabMultiplayerModels.DeleteRemoteUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteRemoteUser(request: PlayFabMultiplayerModels.DeleteRemoteUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes a multiplayer server game secret. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deletesecret + */ + DeleteSecret(request: PlayFabMultiplayerModels.DeleteSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Enables the multiplayer server feature for a title. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/enablemultiplayerserversfortitle */ - EnableMultiplayerServersForTitle(request: PlayFabMultiplayerModels.EnableMultiplayerServersForTitleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + EnableMultiplayerServersForTitle(request: PlayFabMultiplayerModels.EnableMultiplayerServersForTitleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Find lobbies which match certain criteria, and which friends are in. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/findfriendlobbies + */ + FindFriendLobbies(request: PlayFabMultiplayerModels.FindFriendLobbiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Gets the URL to upload assets to. + * Find all the lobbies that match certain criteria. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/findlobbies + */ + FindLobbies(request: PlayFabMultiplayerModels.FindLobbiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets a URL that can be used to download the specified asset. A sample pre-authenticated url - + * https://sampleStorageAccount.blob.core.windows.net/gameassets/gameserver.zip?sv=2015-04-05&ss=b&srt=sco&sp=rw&st=startDate&se=endDate&spr=https&sig=sampleSig&api-version=2017-07-29 + * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getassetdownloadurl + */ + GetAssetDownloadUrl(request: PlayFabMultiplayerModels.GetAssetDownloadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets the URL to upload assets to. A sample pre-authenticated url - + * https://sampleStorageAccount.blob.core.windows.net/gameassets/gameserver.zip?sv=2015-04-05&ss=b&srt=sco&sp=rw&st=startDate&se=endDate&spr=https&sig=sampleSig&api-version=2017-07-29 * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getassetuploadurl */ - GetAssetUploadUrl(request: PlayFabMultiplayerModels.GetAssetUploadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetAssetUploadUrl(request: PlayFabMultiplayerModels.GetAssetUploadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets a multiplayer server build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getbuild */ - GetBuild(request: PlayFabMultiplayerModels.GetBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetBuild(request: PlayFabMultiplayerModels.GetBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets a multiplayer server build alias. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getbuildalias */ - GetBuildAlias(request: PlayFabMultiplayerModels.GetBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetBuildAlias(request: PlayFabMultiplayerModels.GetBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the credentials to the container registry. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getcontainerregistrycredentials */ - GetContainerRegistryCredentials(request: PlayFabMultiplayerModels.GetContainerRegistryCredentialsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetContainerRegistryCredentials(request: PlayFabMultiplayerModels.GetContainerRegistryCredentialsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/getlobby + */ + GetLobby(request: PlayFabMultiplayerModels.GetLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get a match. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/getmatch */ - GetMatch(request: PlayFabMultiplayerModels.GetMatchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetMatch(request: PlayFabMultiplayerModels.GetMatchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * SDK support is limited to C# and Java for this API. Get a matchmaking queue configuration. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking-admin/getmatchmakingqueue */ - GetMatchmakingQueue(request: PlayFabMultiplayerModels.GetMatchmakingQueueRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetMatchmakingQueue(request: PlayFabMultiplayerModels.GetMatchmakingQueueRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get a matchmaking ticket by ticket Id. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/getmatchmakingticket */ - GetMatchmakingTicket(request: PlayFabMultiplayerModels.GetMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetMatchmakingTicket(request: PlayFabMultiplayerModels.GetMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets multiplayer server session details for a build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getmultiplayerserverdetails */ - GetMultiplayerServerDetails(request: PlayFabMultiplayerModels.GetMultiplayerServerDetailsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetMultiplayerServerDetails(request: PlayFabMultiplayerModels.GetMultiplayerServerDetailsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets multiplayer server logs after a server has terminated. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getmultiplayerserverlogs */ - GetMultiplayerServerLogs(request: PlayFabMultiplayerModels.GetMultiplayerServerLogsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetMultiplayerServerLogs(request: PlayFabMultiplayerModels.GetMultiplayerServerLogsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets multiplayer server logs after a server has terminated. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getmultiplayersessionlogsbysessionid */ - GetMultiplayerSessionLogsBySessionId(request: PlayFabMultiplayerModels.GetMultiplayerSessionLogsBySessionIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetMultiplayerSessionLogsBySessionId(request: PlayFabMultiplayerModels.GetMultiplayerSessionLogsBySessionIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get the statistics for a queue. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/getqueuestatistics */ - GetQueueStatistics(request: PlayFabMultiplayerModels.GetQueueStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetQueueStatistics(request: PlayFabMultiplayerModels.GetQueueStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets a remote login endpoint to a VM that is hosting a multiplayer server build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getremoteloginendpoint */ - GetRemoteLoginEndpoint(request: PlayFabMultiplayerModels.GetRemoteLoginEndpointRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetRemoteLoginEndpoint(request: PlayFabMultiplayerModels.GetRemoteLoginEndpointRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get a matchmaking backfill ticket by ticket Id. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/getserverbackfillticket */ - GetServerBackfillTicket(request: PlayFabMultiplayerModels.GetServerBackfillTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetServerBackfillTicket(request: PlayFabMultiplayerModels.GetServerBackfillTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the status of whether a title is enabled for the multiplayer server feature. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/gettitleenabledformultiplayerserversstatus */ - GetTitleEnabledForMultiplayerServersStatus(request: PlayFabMultiplayerModels.GetTitleEnabledForMultiplayerServersStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleEnabledForMultiplayerServersStatus(request: PlayFabMultiplayerModels.GetTitleEnabledForMultiplayerServersStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets a title's server quota change request. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/gettitlemultiplayerserversquotachange */ - GetTitleMultiplayerServersQuotaChange(request: PlayFabMultiplayerModels.GetTitleMultiplayerServersQuotaChangeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleMultiplayerServersQuotaChange(request: PlayFabMultiplayerModels.GetTitleMultiplayerServersQuotaChangeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the quotas for a title in relation to multiplayer servers. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/gettitlemultiplayerserversquotas */ - GetTitleMultiplayerServersQuotas(request: PlayFabMultiplayerModels.GetTitleMultiplayerServersQuotasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleMultiplayerServersQuotas(request: PlayFabMultiplayerModels.GetTitleMultiplayerServersQuotasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Send a notification to invite a player to a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/invitetolobby + */ + InviteToLobby(request: PlayFabMultiplayerModels.InviteToLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Join an Arranged lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/joinarrangedlobby + */ + JoinArrangedLobby(request: PlayFabMultiplayerModels.JoinArrangedLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Join a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/joinlobby + */ + JoinLobby(request: PlayFabMultiplayerModels.JoinLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Preview: Join a lobby as a server entity. This is restricted to client lobbies which are using connections. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/joinlobbyasserver + */ + JoinLobbyAsServer(request: PlayFabMultiplayerModels.JoinLobbyAsServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Join a matchmaking ticket. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/joinmatchmakingticket */ - JoinMatchmakingTicket(request: PlayFabMultiplayerModels.JoinMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + JoinMatchmakingTicket(request: PlayFabMultiplayerModels.JoinMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Leave a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/leavelobby + */ + LeaveLobby(request: PlayFabMultiplayerModels.LeaveLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Preview: Request for server to leave a lobby. This is restricted to client owned lobbies which are using connections. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/leavelobbyasserver + */ + LeaveLobbyAsServer(request: PlayFabMultiplayerModels.LeaveLobbyAsServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists archived multiplayer server sessions for a build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listarchivedmultiplayerservers */ - ListArchivedMultiplayerServers(request: PlayFabMultiplayerModels.ListMultiplayerServersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListArchivedMultiplayerServers(request: PlayFabMultiplayerModels.ListMultiplayerServersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists multiplayer server game assets for a title. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listassetsummaries */ - ListAssetSummaries(request: PlayFabMultiplayerModels.ListAssetSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListAssetSummaries(request: PlayFabMultiplayerModels.ListAssetSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists details of all build aliases for a title. Accepts tokens for title and if game client access is enabled, allows * game client to request list of builds with player entity token. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listbuildaliases */ - ListBuildAliases(request: PlayFabMultiplayerModels.ListBuildAliasesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListBuildAliases(request: PlayFabMultiplayerModels.ListBuildAliasesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists summarized details of all multiplayer server builds for a title. Accepts tokens for title and if game client * access is enabled, allows game client to request list of builds with player entity token. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listbuildsummariesv2 */ - ListBuildSummariesV2(request: PlayFabMultiplayerModels.ListBuildSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListBuildSummariesV2(request: PlayFabMultiplayerModels.ListBuildSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists multiplayer server game certificates for a title. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listcertificatesummaries */ - ListCertificateSummaries(request: PlayFabMultiplayerModels.ListCertificateSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListCertificateSummaries(request: PlayFabMultiplayerModels.ListCertificateSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists custom container images for a title. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listcontainerimages */ - ListContainerImages(request: PlayFabMultiplayerModels.ListContainerImagesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListContainerImages(request: PlayFabMultiplayerModels.ListContainerImagesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists the tags for a custom container image. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listcontainerimagetags */ - ListContainerImageTags(request: PlayFabMultiplayerModels.ListContainerImageTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListContainerImageTags(request: PlayFabMultiplayerModels.ListContainerImageTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * SDK support is limited to C# and Java for this API. List all matchmaking queue configs. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking-admin/listmatchmakingqueues */ - ListMatchmakingQueues(request: PlayFabMultiplayerModels.ListMatchmakingQueuesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListMatchmakingQueues(request: PlayFabMultiplayerModels.ListMatchmakingQueuesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * List all matchmaking ticket Ids the user is a member of. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/listmatchmakingticketsforplayer */ - ListMatchmakingTicketsForPlayer(request: PlayFabMultiplayerModels.ListMatchmakingTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListMatchmakingTicketsForPlayer(request: PlayFabMultiplayerModels.ListMatchmakingTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists multiplayer server sessions for a build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listmultiplayerservers */ - ListMultiplayerServers(request: PlayFabMultiplayerModels.ListMultiplayerServersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListMultiplayerServers(request: PlayFabMultiplayerModels.ListMultiplayerServersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists quality of service servers for party. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listpartyqosservers */ - ListPartyQosServers(request: PlayFabMultiplayerModels.ListPartyQosServersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListPartyQosServers(request: PlayFabMultiplayerModels.ListPartyQosServersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists quality of service servers for the title. By default, servers are only returned for regions where a Multiplayer * Servers build has been deployed. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listqosserversfortitle */ - ListQosServersForTitle(request: PlayFabMultiplayerModels.ListQosServersForTitleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListQosServersForTitle(request: PlayFabMultiplayerModels.ListQosServersForTitleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Lists multiplayer server game secrets for a title. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listsecretsummaries + */ + ListSecretSummaries(request: PlayFabMultiplayerModels.ListSecretSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * List all server backfill ticket Ids the user is a member of. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/listserverbackfillticketsforplayer */ - ListServerBackfillTicketsForPlayer(request: PlayFabMultiplayerModels.ListServerBackfillTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListServerBackfillTicketsForPlayer(request: PlayFabMultiplayerModels.ListServerBackfillTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * List all server quota change requests for a title. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listtitlemultiplayerserversquotachanges */ - ListTitleMultiplayerServersQuotaChanges(request: PlayFabMultiplayerModels.ListTitleMultiplayerServersQuotaChangesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListTitleMultiplayerServersQuotaChanges(request: PlayFabMultiplayerModels.ListTitleMultiplayerServersQuotaChangesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists virtual machines for a title. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listvirtualmachinesummaries */ - ListVirtualMachineSummaries(request: PlayFabMultiplayerModels.ListVirtualMachineSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListVirtualMachineSummaries(request: PlayFabMultiplayerModels.ListVirtualMachineSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * SDK support is limited to C# and Java for this API. Remove a matchmaking queue config. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking-admin/removematchmakingqueue */ - RemoveMatchmakingQueue(request: PlayFabMultiplayerModels.RemoveMatchmakingQueueRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveMatchmakingQueue(request: PlayFabMultiplayerModels.RemoveMatchmakingQueueRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Remove a member from a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/removemember + */ + RemoveMember(request: PlayFabMultiplayerModels.RemoveMemberFromLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Request a multiplayer server session. Accepts tokens for title and if game client access is enabled, allows game client * to request a server with player entity token. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/requestmultiplayerserver */ - RequestMultiplayerServer(request: PlayFabMultiplayerModels.RequestMultiplayerServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RequestMultiplayerServer(request: PlayFabMultiplayerModels.RequestMultiplayerServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Request a party session. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/requestpartyservice + */ + RequestPartyService(request: PlayFabMultiplayerModels.RequestPartyServiceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Rolls over the credentials to the container registry. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/rollovercontainerregistrycredentials */ - RolloverContainerRegistryCredentials(request: PlayFabMultiplayerModels.RolloverContainerRegistryCredentialsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RolloverContainerRegistryCredentials(request: PlayFabMultiplayerModels.RolloverContainerRegistryCredentialsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * SDK support is limited to C# and Java for this API. Create or update a matchmaking queue configuration. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking-admin/setmatchmakingqueue */ - SetMatchmakingQueue(request: PlayFabMultiplayerModels.SetMatchmakingQueueRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetMatchmakingQueue(request: PlayFabMultiplayerModels.SetMatchmakingQueueRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Shuts down a multiplayer server session. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/shutdownmultiplayerserver */ - ShutdownMultiplayerServer(request: PlayFabMultiplayerModels.ShutdownMultiplayerServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ShutdownMultiplayerServer(request: PlayFabMultiplayerModels.ShutdownMultiplayerServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Subscribe to lobby resource notifications. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/subscribetolobbyresource + */ + SubscribeToLobbyResource(request: PlayFabMultiplayerModels.SubscribeToLobbyResourceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Subscribe to match resource notifications. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/subscribetomatchmakingresource + */ + SubscribeToMatchmakingResource(request: PlayFabMultiplayerModels.SubscribeToMatchResourceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unsubscribe from lobby notifications. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/unsubscribefromlobbyresource + */ + UnsubscribeFromLobbyResource(request: PlayFabMultiplayerModels.UnsubscribeFromLobbyResourceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unsubscribe from match resource notifications. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/unsubscribefrommatchmakingresource + */ + UnsubscribeFromMatchmakingResource(request: PlayFabMultiplayerModels.UnsubscribeFromMatchResourceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Untags a container image. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/untagcontainerimage */ - UntagContainerImage(request: PlayFabMultiplayerModels.UntagContainerImageRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UntagContainerImage(request: PlayFabMultiplayerModels.UntagContainerImageRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a multiplayer server build alias. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/updatebuildalias */ - UpdateBuildAlias(request: PlayFabMultiplayerModels.UpdateBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateBuildAlias(request: PlayFabMultiplayerModels.UpdateBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates a multiplayer server build's name. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/updatebuildname */ - UpdateBuildName(request: PlayFabMultiplayerModels.UpdateBuildNameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateBuildName(request: PlayFabMultiplayerModels.UpdateBuildNameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates a multiplayer server build's region. If the region is not yet created, it will be created * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/updatebuildregion */ - UpdateBuildRegion(request: PlayFabMultiplayerModels.UpdateBuildRegionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateBuildRegion(request: PlayFabMultiplayerModels.UpdateBuildRegionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates a multiplayer server build's regions. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/updatebuildregions */ - UpdateBuildRegions(request: PlayFabMultiplayerModels.UpdateBuildRegionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateBuildRegions(request: PlayFabMultiplayerModels.UpdateBuildRegionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Update a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/updatelobby + */ + UpdateLobby(request: PlayFabMultiplayerModels.UpdateLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Preview: Update fields related to a joined server in the lobby the server is in. Servers can keep a lobby from expiring + * by being the one to "update" the lobby in some way. Servers have no impact on last member leave/last member disconnect + * behavior. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/updatelobbyasserver + */ + UpdateLobbyAsServer(request: PlayFabMultiplayerModels.UpdateLobbyAsServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Uploads a multiplayer server game certificate. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/uploadcertificate */ - UploadCertificate(request: PlayFabMultiplayerModels.UploadCertificateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UploadCertificate(request: PlayFabMultiplayerModels.UploadCertificateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Uploads a multiplayer server game secret. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/uploadsecret + */ + UploadSecret(request: PlayFabMultiplayerModels.UploadSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } declare module PlayFabMultiplayerModels { + type AccessPolicy = "Public" + + | "Friends" + | "Private"; + export interface AssetReference { /** The asset's file name. This is a filename with the .zip, .tar, or .tar.gz extension. */ FileName?: string; @@ -361,16 +485,20 @@ declare module PlayFabMultiplayerModels { } type AttributeMergeFunction = "Min" + | "Max" | "Average"; type AttributeNotSpecifiedBehavior = "UseDefault" + | "MatchAny"; type AttributeSource = "User" + | "PlayerEntity"; type AzureRegion = "AustraliaEast" + | "AustraliaSoutheast" | "BrazilSouth" | "CentralUs" @@ -392,9 +520,14 @@ declare module PlayFabMultiplayerModels { | "WestUs2" | "CentralIndia" | "UaeNorth" - | "UkSouth"; + | "UkSouth" + | "SwedenCentral" + | "CanadaCentral" + | "MexicoCentral" + | "WestUs3"; type AzureVmFamily = "A" + | "Av2" | "Dv2" | "Dv3" @@ -402,15 +535,31 @@ declare module PlayFabMultiplayerModels { | "Fsv2" | "Dasv4" | "Dav4" + | "Dadsv5" + | "Dadsv6" | "Eav4" | "Easv4" | "Ev4" | "Esv4" | "Dsv3" | "Dsv2" - | "NCasT4_v3"; + | "NCasT4_v3" + | "Ddv4" + | "Ddsv4" + | "HBv3" + | "Ddv5" + | "Ddsv5" + | "Ddsv6" + | "Fasv6" + | "Fasv7" + | "Fadsv7" + | "Eadsv5" + | "Eadsv6" + | "Eadsv7" + | "Dadsv7"; type AzureVmSize = "Standard_A1" + | "Standard_A2" | "Standard_A3" | "Standard_A4" @@ -436,6 +585,18 @@ declare module PlayFabMultiplayerModels { | "Standard_F4s_v2" | "Standard_F8s_v2" | "Standard_F16s_v2" + | "Standard_F2as_v6" + | "Standard_F4as_v6" + | "Standard_F8as_v6" + | "Standard_F16as_v6" + | "Standard_F2as_v7" + | "Standard_F4as_v7" + | "Standard_F8as_v7" + | "Standard_F16as_v7" + | "Standard_F2ads_v7" + | "Standard_F4ads_v7" + | "Standard_F8ads_v7" + | "Standard_F16ads_v7" | "Standard_D2as_v4" | "Standard_D4as_v4" | "Standard_D8as_v4" @@ -444,6 +605,18 @@ declare module PlayFabMultiplayerModels { | "Standard_D4a_v4" | "Standard_D8a_v4" | "Standard_D16a_v4" + | "Standard_D2ads_v5" + | "Standard_D4ads_v5" + | "Standard_D8ads_v5" + | "Standard_D16ads_v5" + | "Standard_D2ads_v6" + | "Standard_D4ads_v6" + | "Standard_D8ads_v6" + | "Standard_D16ads_v6" + | "Standard_D2ads_v7" + | "Standard_D4ads_v7" + | "Standard_D8ads_v7" + | "Standard_D16ads_v7" | "Standard_E2a_v4" | "Standard_E4a_v4" | "Standard_E8a_v4" @@ -452,6 +625,18 @@ declare module PlayFabMultiplayerModels { | "Standard_E4as_v4" | "Standard_E8as_v4" | "Standard_E16as_v4" + | "Standard_E2ads_v5" + | "Standard_E4ads_v5" + | "Standard_E8ads_v5" + | "Standard_E16ads_v5" + | "Standard_E2ads_v6" + | "Standard_E4ads_v6" + | "Standard_E8ads_v6" + | "Standard_E16ads_v6" + | "Standard_E2ads_v7" + | "Standard_E4ads_v7" + | "Standard_E8ads_v7" + | "Standard_E16ads_v7" | "Standard_D2s_v3" | "Standard_D4s_v3" | "Standard_D8s_v3" @@ -461,7 +646,34 @@ declare module PlayFabMultiplayerModels { | "Standard_DS3_v2" | "Standard_DS4_v2" | "Standard_DS5_v2" - | "Standard_NC4as_T4_v3"; + | "Standard_NC4as_T4_v3" + | "Standard_D2d_v4" + | "Standard_D4d_v4" + | "Standard_D8d_v4" + | "Standard_D16d_v4" + | "Standard_D2ds_v4" + | "Standard_D4ds_v4" + | "Standard_D8ds_v4" + | "Standard_D16ds_v4" + | "Standard_HB120_16rs_v3" + | "Standard_HB120_32rs_v3" + | "Standard_HB120_64rs_v3" + | "Standard_HB120_96rs_v3" + | "Standard_HB120rs_v3" + | "Standard_D2d_v5" + | "Standard_D4d_v5" + | "Standard_D8d_v5" + | "Standard_D16d_v5" + | "Standard_D32d_v5" + | "Standard_D2ds_v5" + | "Standard_D4ds_v5" + | "Standard_D8ds_v5" + | "Standard_D16ds_v5" + | "Standard_D32ds_v5" + | "Standard_D2ds_v6" + | "Standard_D4ds_v6" + | "Standard_D8ds_v6" + | "Standard_D16ds_v6"; export interface BuildAliasDetailsResponse extends PlayFabModule.IPlayFabResultCommon { /** The guid string alias Id of the alias to be created or updated. */ @@ -484,8 +696,12 @@ declare module PlayFabMultiplayerModels { CurrentServerStats?: CurrentServerStats; /** Optional settings to control dynamic adjustment of standby target */ DynamicStandbySettings?: DynamicStandbySettings; + /** Whether the game assets provided for the build have been replicated to this region. */ + IsAssetReplicationComplete: boolean; /** The maximum number of multiplayer servers for the region. */ MaxServers: number; + /** Regional override for the number of multiplayer servers to host on a single VM of the build. */ + MultiplayerServerCountPerVm?: number; /** The build region. */ Region?: string; /** Optional settings to set the standby target to specified values during the supplied schedules */ @@ -497,6 +713,8 @@ declare module PlayFabMultiplayerModels { * Unhealthy, Deleting, Deleted. */ Status?: string; + /** Regional override for the VM size the build was created on. */ + VmSize?: string; } @@ -505,12 +723,16 @@ declare module PlayFabMultiplayerModels { DynamicStandbySettings?: DynamicStandbySettings; /** The maximum number of multiplayer servers for the region. */ MaxServers: number; + /** Regional override for the number of multiplayer servers to host on a single VM of the build. */ + MultiplayerServerCountPerVm?: number; /** The build region. */ Region: string; /** Optional settings to set the standby target to specified values during the supplied schedules */ ScheduledStandbySettings?: ScheduledStandbySettings; /** The number of standby multiplayer servers for the region. */ StandbyServers: number; + /** Regional override for the VM size the build was created on. */ + VmSize?: string; } @@ -537,7 +759,7 @@ declare module PlayFabMultiplayerModels { export interface CancelAllMatchmakingTicketsForPlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity key of the player whose tickets should be canceled. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The name of the queue from which a player's tickets should be canceled. */ QueueName: string; @@ -551,7 +773,7 @@ declare module PlayFabMultiplayerModels { export interface CancelAllServerBackfillTicketsForPlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity key of the player whose backfill tickets should be canceled. */ + /** The entity to perform this action on. */ Entity: EntityKey; /** The name of the queue from which a player's backfill tickets should be canceled. */ QueueName: string; @@ -563,6 +785,7 @@ declare module PlayFabMultiplayerModels { } type CancellationReason = "Requested" + | "Internal" | "Timeout"; @@ -622,6 +845,7 @@ declare module PlayFabMultiplayerModels { } type ContainerFlavor = "ManagedWindowsServerCore" + | "CustomLinux" | "ManagedWindowsServerCorePreview" | "Invalid"; @@ -686,6 +910,8 @@ declare module PlayFabMultiplayerModels { GameAssetReferences?: AssetReferenceParams[]; /** The game certificates for the build. */ GameCertificateReferences?: GameCertificateReferenceParams[]; + /** The game secrets for the build. */ + GameSecretReferences?: GameSecretReferenceParams[]; /** The Linux instrumentation configuration for the build. */ LinuxInstrumentationConfiguration?: LinuxInstrumentationConfiguration; /** @@ -693,19 +919,20 @@ declare module PlayFabMultiplayerModels { * Game Server SDK (GSDK).Constraints: Maximum number of keys: 30, Maximum key length: 50, Maximum value length: 100 */ Metadata?: { [key: string]: string | null }; + /** The configuration for the monitoring application on the build */ + MonitoringApplicationConfiguration?: MonitoringApplicationConfigurationParams; /** The number of multiplayer servers to host on a single VM. */ MultiplayerServerCountPerVm: number; /** The ports to map the build on. */ Ports: Port[]; /** The region configurations for the build. */ RegionConfigurations: BuildRegionParams[]; - /** - * When true, assets will be downloaded and uncompressed in memory, without the compressedversion being written first to - * disc. - */ - UseStreamingForAssetDownloads?: boolean; + /** The resource constraints to apply to each server on the VM (EXPERIMENTAL API) */ + ServerResourceConstraints?: ServerResourceConstraintParams; /** The VM size to create the build on. */ VmSize?: string; + /** The configuration for the VmStartupScript for the build */ + VmStartupScriptConfiguration?: VmStartupScriptParams; } @@ -731,10 +958,14 @@ declare module PlayFabMultiplayerModels { GameAssetReferences?: AssetReference[]; /** The game certificates for the build. */ GameCertificateReferences?: GameCertificateReference[]; + /** The game secrets for the build. */ + GameSecretReferences?: GameSecretReference[]; /** The Linux instrumentation configuration for this build. */ LinuxInstrumentationConfiguration?: LinuxInstrumentationConfiguration; /** The metadata of the build. */ Metadata?: { [key: string]: string | null }; + /** The configuration for the monitoring application for the build */ + MonitoringApplicationConfiguration?: MonitoringApplicationConfiguration; /** The number of multiplayer servers to host on a single VM of the build. */ MultiplayerServerCountPerVm: number; /** The OS platform used for running the game process. */ @@ -743,6 +974,8 @@ declare module PlayFabMultiplayerModels { Ports?: Port[]; /** The region configuration for the build. */ RegionConfigurations?: BuildRegion[]; + /** The resource constraints to apply to each server on the VM (EXPERIMENTAL API) */ + ServerResourceConstraints?: ServerResourceConstraintParams; /** The type of game server being hosted. */ ServerType?: string; /** @@ -752,6 +985,8 @@ declare module PlayFabMultiplayerModels { UseStreamingForAssetDownloads?: boolean; /** The VM size the build was created on. */ VmSize?: string; + /** The configuration for the VmStartupScript feature for the build */ + VmStartupScriptConfiguration?: VmStartupScriptConfiguration; } @@ -771,6 +1006,8 @@ declare module PlayFabMultiplayerModels { GameAssetReferences: AssetReferenceParams[]; /** The game certificates for the build. */ GameCertificateReferences?: GameCertificateReferenceParams[]; + /** The game secrets for the build. */ + GameSecretReferences?: GameSecretReferenceParams[]; /** * The directory containing the game executable. This would be the start path of the game assets that contain the main game * server executable. If not provided, a best effort will be made to extract it from the start game command. @@ -783,21 +1020,24 @@ declare module PlayFabMultiplayerModels { * Game Server SDK (GSDK).Constraints: Maximum number of keys: 30, Maximum key length: 50, Maximum value length: 100 */ Metadata?: { [key: string]: string | null }; + /** The configuration for the monitoring application on the build */ + MonitoringApplicationConfiguration?: MonitoringApplicationConfigurationParams; /** The number of multiplayer servers to host on a single VM. */ MultiplayerServerCountPerVm: number; /** The ports to map the build on. */ Ports: Port[]; /** The region configurations for the build. */ RegionConfigurations: BuildRegionParams[]; + /** The resource constraints to apply to each server on the VM (EXPERIMENTAL API) */ + ServerResourceConstraints?: ServerResourceConstraintParams; /** The command to run when the multiplayer server is started, including any arguments. */ StartMultiplayerServerCommand: string; - /** - * When true, assets will be downloaded and uncompressed in memory, without the compressedversion being written first to - * disc. - */ - UseStreamingForAssetDownloads?: boolean; /** The VM size to create the build on. */ VmSize?: string; + /** The configuration for the VmStartupScript for the build */ + VmStartupScriptConfiguration?: VmStartupScriptParams; + /** The crash dump configuration for the build. */ + WindowsCrashDumpConfiguration?: WindowsCrashDumpConfiguration; } @@ -819,6 +1059,8 @@ declare module PlayFabMultiplayerModels { GameAssetReferences?: AssetReference[]; /** The game certificates for the build. */ GameCertificateReferences?: GameCertificateReference[]; + /** The game secrets for the build. */ + GameSecretReferences?: GameSecretReference[]; /** * The directory containing the game executable. This would be the start path of the game assets that contain the main game * server executable. If not provided, a best effort will be made to extract it from the start game command. @@ -828,6 +1070,8 @@ declare module PlayFabMultiplayerModels { InstrumentationConfiguration?: InstrumentationConfiguration; /** The metadata of the build. */ Metadata?: { [key: string]: string | null }; + /** The configuration for the monitoring application for the build */ + MonitoringApplicationConfiguration?: MonitoringApplicationConfiguration; /** The number of multiplayer servers to host on a single VM of the build. */ MultiplayerServerCountPerVm: number; /** The OS platform used for running the game process. */ @@ -836,6 +1080,8 @@ declare module PlayFabMultiplayerModels { Ports?: Port[]; /** The region configuration for the build. */ RegionConfigurations?: BuildRegion[]; + /** The resource constraints to apply to each server on the VM (EXPERIMENTAL API) */ + ServerResourceConstraints?: ServerResourceConstraintParams; /** The type of game server being hosted. */ ServerType?: string; /** The command to run when the multiplayer server has been allocated, including any arguments. */ @@ -847,6 +1093,8 @@ declare module PlayFabMultiplayerModels { UseStreamingForAssetDownloads?: boolean; /** The VM size the build was created on. */ VmSize?: string; + /** The configuration for the VmStartupScript feature for the build */ + VmStartupScriptConfiguration?: VmStartupScriptConfiguration; } @@ -864,23 +1112,29 @@ declare module PlayFabMultiplayerModels { GameAssetReferences: AssetReferenceParams[]; /** The game certificates for the build. */ GameCertificateReferences?: GameCertificateReferenceParams[]; + /** The game secrets for the build. */ + GameSecretReferences?: GameSecretReferenceParams[]; /** * The working directory for the game process. If this is not provided, the working directory will be set based on the * mount path of the game server executable. */ GameWorkingDirectory?: string; - /** The instrumentation configuration for the build. */ + /** The instrumentation configuration for the Build. Used only if it is a Windows Build. */ InstrumentationConfiguration?: InstrumentationConfiguration; /** * Indicates whether this build will be created using the OS Preview versionPreview OS is recommended for dev builds to * detect any breaking changes before they are released to retail. Retail builds should set this value to false. */ IsOSPreview?: boolean; + /** The Linux instrumentation configuration for the Build. Used only if it is a Linux Build. */ + LinuxInstrumentationConfiguration?: LinuxInstrumentationConfiguration; /** * Metadata to tag the build. The keys are case insensitive. The build metadata is made available to the server through * Game Server SDK (GSDK).Constraints: Maximum number of keys: 30, Maximum key length: 50, Maximum value length: 100 */ Metadata?: { [key: string]: string | null }; + /** The configuration for the monitoring application on the build */ + MonitoringApplicationConfiguration?: MonitoringApplicationConfigurationParams; /** The number of multiplayer servers to host on a single VM. */ MultiplayerServerCountPerVm: number; /** The OS platform used for running the game process. */ @@ -894,13 +1148,10 @@ declare module PlayFabMultiplayerModels { * relative to the root asset folder when unzipped. */ StartMultiplayerServerCommand: string; - /** - * When true, assets will be downloaded and uncompressed in memory, without the compressedversion being written first to - * disc. - */ - UseStreamingForAssetDownloads?: boolean; /** The VM size to create the build on. */ VmSize?: string; + /** The configuration for the VmStartupScript for the build */ + VmStartupScriptConfiguration?: VmStartupScriptParams; } @@ -922,6 +1173,8 @@ declare module PlayFabMultiplayerModels { GameAssetReferences?: AssetReference[]; /** The game certificates for the build. */ GameCertificateReferences?: GameCertificateReference[]; + /** The game secrets for the build. */ + GameSecretReferences?: GameSecretReference[]; /** * The working directory for the game process. If this is not provided, the working directory will be set based on the * mount path of the game server executable. @@ -934,8 +1187,12 @@ declare module PlayFabMultiplayerModels { * detect any breaking changes before they are released to retail. Retail builds should set this value to false. */ IsOSPreview?: boolean; + /** The Linux instrumentation configuration for this build. */ + LinuxInstrumentationConfiguration?: LinuxInstrumentationConfiguration; /** The metadata of the build. */ Metadata?: { [key: string]: string | null }; + /** The configuration for the monitoring application for the build */ + MonitoringApplicationConfiguration?: MonitoringApplicationConfiguration; /** The number of multiplayer servers to host on a single VM of the build. */ MultiplayerServerCountPerVm: number; /** The OS platform used for running the game process. */ @@ -958,6 +1215,76 @@ declare module PlayFabMultiplayerModels { UseStreamingForAssetDownloads?: boolean; /** The VM size the build was created on. */ VmSize?: string; + /** The configuration for the VmStartupScript feature for the build */ + VmStartupScriptConfiguration?: VmStartupScriptConfiguration; + + } + + export interface CreateLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * The policy indicating who is allowed to join the lobby, and the visibility to queries. May be 'Public', 'Friends' or + * 'Private'. Public means the lobby is both visible in queries and any player may join, including invited players. Friends + * means that users who are bidirectional friends of members in the lobby may search to find friend lobbies, to retrieve + * its connection string. Private means the lobby is not visible in queries, and a player must receive an invitation to + * join. Defaults to 'Public' on creation. Can only be changed by the lobby owner. + */ + AccessPolicy?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * The private key-value pairs which are visible to all entities in the lobby. At most 30 key-value pairs may be stored + * here, keys are limited to 30 characters and values to 1000. The total size of all lobbyData values may not exceed 4096 + * bytes. Keys are case sensitive. + */ + LobbyData?: { [key: string]: string | null }; + /** The maximum number of players allowed in the lobby. The value must be between 2 and 128. */ + MaxPlayers: number; + /** + * The member initially added to the lobby. Client must specify exactly one member, which is the creator's entity and + * member data. Member PubSubConnectionHandle must be null or empty. Game servers must not specify any members. + */ + Members?: Member[]; + /** The lobby owner. Must be the calling entity. */ + Owner: EntityKey; + /** + * The policy for how a new owner is chosen. May be 'Automatic', 'Manual' or 'None'. Can only be specified by clients. If + * client-owned and 'Automatic' - The Lobby service will automatically assign another connected owner when the current + * owner leaves or disconnects. The useConnections property must be true. If client - owned and 'Manual' - Ownership is + * protected as long as the current owner is connected. If the current owner leaves or disconnects any member may set + * themselves as the current owner. The useConnections property must be true. If client-owned and 'None' - Any member can + * set ownership. The useConnections property can be either true or false. + */ + OwnerMigrationPolicy?: string; + /** + * A setting that controls whether only the lobby owner can send invites to join the lobby. When true, only the lobby owner + * can send invites. When false or not specified, any member can send invites. Defaults to false if not specified. + * Restricted to client owned lobbies. + */ + RestrictInvitesToLobbyOwner: boolean; + /** + * The public key-value pairs which allow queries to differentiate between lobbies. Queries will refer to these key-value + * pairs in their filter and order by clauses to retrieve lobbies fitting the specified criteria. At most 30 key-value + * pairs may be stored here. Keys are of the format string_key1, string_key2 ... string_key30 for string values, or + * number_key1, number_key2, ... number_key30 for numeric values.Numeric values are floats. Values can be at most 256 + * characters long. The total size of all searchData values may not exceed 1024 bytes. + */ + SearchData?: { [key: string]: string | null }; + /** + * A setting to control whether connections are used. Defaults to true. When true, notifications are sent to subscribed + * players, disconnect detection removes connectionHandles, only owner migration policies using connections are allowed, + * and lobbies must have at least one connected member to be searchable or be a server hosted lobby with a connected + * server. If false, then notifications are not sent, connections are not allowed, and lobbies do not need connections to + * be searchable. + */ + UseConnections: boolean; + + } + + export interface CreateLobbyResult extends PlayFabModule.IPlayFabResultCommon { + /** A field which indicates which lobby the user will be joining. */ + ConnectionString: string; + /** Id to uniquely identify a lobby. */ + LobbyId: string; } @@ -1165,6 +1492,14 @@ declare module PlayFabMultiplayerModels { } + export interface DeleteLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The id of the lobby. */ + LobbyId?: string; + + } + export interface DeleteRemoteUserRequest extends PlayFabModule.IPlayFabRequestCommon { /** The guid string build ID of the multiplayer server where the remote user is to delete. */ BuildId: string; @@ -1179,6 +1514,14 @@ declare module PlayFabMultiplayerModels { } + export interface DeleteSecretRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the secret. */ + Name: string; + + } + export interface DifferenceRule { /** Description of the attribute used by this rule to match tickets. */ Attribute: QueueRuleAttribute; @@ -1215,6 +1558,17 @@ declare module PlayFabMultiplayerModels { } + type DirectPeerConnectivityOptions = "None" + + | "SamePlatformType" + | "DifferentPlatformType" + | "AnyPlatformType" + | "SameEntityLoginProvider" + | "DifferentEntityLoginProvider" + | "AnyEntityLoginProvider" + | "AnyPlatformTypeAndEntityLoginProvider" + | "OnlyServers"; + export interface DynamicStandbySettings { /** * List of auto standing by trigger values and corresponding standing by multiplier. Defaults to 1.5X at 50%, 3X at 25%, @@ -1260,6 +1614,113 @@ declare module PlayFabMultiplayerModels { } + type ExternalFriendSources = "None" + + | "Steam" + | "Facebook" + | "Xbox" + | "Psn" + | "All"; + + export interface FindFriendLobbiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Indicates which other platforms' friends this query should link to. */ + ExternalPlatformFriends?: string; + /** + * OData style string that contains one or more filters. Only the following operators are supported: "and" (logical and), + * "eq" (equal), "ne" (not equals), "ge" (greater than or equal), "gt" (greater than), "le" (less than or equal), and "lt" + * (less than). The left-hand side of each OData logical expression should be either a search property key (e.g. + * string_key1, number_key3, etc) or one of the pre-defined search keys all of which must be prefixed by "lobby/": + * lobby/memberCount (number of players in a lobby), lobby/maxMemberCount (maximum number of players allowed in a lobby), + * lobby/memberCountRemaining (remaining number of players who can be allowed in a lobby), lobby/membershipLock (must equal + * 'Unlocked' or 'Locked'), lobby/amOwner (required to equal "true"), lobby/amMember (required to equal "true"). + */ + Filter?: string; + /** + * OData style string that contains sorting for this query in either ascending ("asc") or descending ("desc") order. + * OrderBy clauses are of the form "number_key1 asc" or the pre-defined search key "lobby/memberCount asc", + * "lobby/memberCountRemaining desc" and "lobby/maxMemberCount desc". To sort by closest, a moniker `distance{number_key1 = + * 5}` can be used to sort by distance from the given number. This field only supports either one sort clause or one + * distance clause. + */ + OrderBy?: string; + /** Request pagination information. */ + Pagination?: PaginationRequest; + /** + * Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. Only mutual Xbox Live friends + * (where both users follow each other) are included, unlike GetFriendsList which includes all users the caller is + * following. + */ + XboxToken?: string; + + } + + export interface FindFriendLobbiesResult extends PlayFabModule.IPlayFabResultCommon { + /** Array of lobbies found that matched FindFriendLobbies request. */ + Lobbies: FriendLobbySummary[]; + /** Pagination response for FindFriendLobbies request. */ + Pagination: PaginationResponse; + + } + + export interface FindLobbiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * OData style string that contains one or more filters. Only the following operators are supported: "and" (logical and), + * "eq" (equal), "ne" (not equals), "ge" (greater than or equal), "gt" (greater than), "le" (less than or equal), and "lt" + * (less than). The left-hand side of each OData logical expression should be either a search property key (e.g. + * string_key1, number_key3, etc) or one of the pre-defined search keys all of which must be prefixed by "lobby/": + * lobby/memberCount (number of players in a lobby), lobby/maxMemberCount (maximum number of players allowed in a lobby), + * lobby/memberCountRemaining (remaining number of players who can be allowed in a lobby), lobby/membershipLock (must equal + * 'Unlocked' or 'Locked'), lobby/amOwner (required to equal "true"), lobby/amMember (required to equal "true"). + */ + Filter?: string; + /** + * OData style string that contains sorting for this query in either ascending ("asc") or descending ("desc") order. + * OrderBy clauses are of the form "number_key1 asc" or the pre-defined search key "lobby/memberCount asc", + * "lobby/memberCountRemaining desc" and "lobby/maxMemberCount desc". To sort by closest, a moniker `distance{number_key1 = + * 5}` can be used to sort by distance from the given number. This field only supports either one sort clause or one + * distance clause. + */ + OrderBy?: string; + /** Request pagination information. */ + Pagination?: PaginationRequest; + + } + + export interface FindLobbiesResult extends PlayFabModule.IPlayFabResultCommon { + /** Array of lobbies found that matched FindLobbies request. */ + Lobbies: LobbySummary[]; + /** Pagination response for FindLobbies request. */ + Pagination: PaginationResponse; + + } + + export interface FriendLobbySummary { + /** + * A string used to join the lobby.This field is populated by the Lobby service.Invites are performed by communicating this + * connectionString to other players. + */ + ConnectionString: string; + /** The current number of players in the lobby. */ + CurrentPlayers: number; + /** Friends in Lobby. */ + Friends?: EntityKey[]; + /** Id to uniquely identify a lobby. */ + LobbyId: string; + /** The maximum number of players allowed in the lobby. */ + MaxPlayers: number; + /** A setting indicating whether members are allowed to join this lobby. When Locked new members are prevented from joining. */ + MembershipLock?: string; + /** The client or server entity which owns this lobby. */ + Owner: EntityKey; + /** Search data. */ + SearchData?: { [key: string]: string | null }; + + } + export interface GameCertificateReference { /** * An alias for the game certificate. The game server will reference this alias via GSDK config to retrieve the game @@ -1290,6 +1751,34 @@ declare module PlayFabMultiplayerModels { } + export interface GameSecretReference { + /** The name of the game secret. This name should match the name of a secret that was previously added to this title. */ + Name?: string; + + } + + export interface GameSecretReferenceParams { + /** The name of the game secret. This name should match the name of a secret that was previously added to this title. */ + Name: string; + + } + + export interface GetAssetDownloadUrlRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The asset's file name to get the download URL for. */ + FileName: string; + + } + + export interface GetAssetDownloadUrlResponse extends PlayFabModule.IPlayFabResultCommon { + /** The asset's download URL. */ + AssetDownloadUrl?: string; + /** The asset's file name to get the download URL for. */ + FileName?: string; + + } + export interface GetAssetUploadUrlRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -1364,6 +1853,8 @@ declare module PlayFabMultiplayerModels { Ports?: Port[]; /** The region configuration for the build. */ RegionConfigurations?: BuildRegion[]; + /** The resource constraints to apply to each server on the VM. */ + ServerResourceConstraints?: ServerResourceConstraintParams; /** The type of game server being hosted. */ ServerType?: string; /** @@ -1371,13 +1862,10 @@ declare module PlayFabMultiplayerModels { * builds. If the build is a custom build, this field will be null. */ StartMultiplayerServerCommand?: string; - /** - * When true, assets will be downloaded and uncompressed in memory, without the compressedversion being written first to - * disc. - */ - UseStreamingForAssetDownloads?: boolean; /** The VM size the build was created on. */ VmSize?: string; + /** The configuration for the VmStartupScript feature for the build */ + VmStartupScriptConfiguration?: VmStartupScriptConfiguration; } @@ -1397,6 +1885,20 @@ declare module PlayFabMultiplayerModels { } + export interface GetLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The id of the lobby. */ + LobbyId?: string; + + } + + export interface GetLobbyResult extends PlayFabModule.IPlayFabResultCommon { + /** The information pertaining to the requested lobby. */ + Lobby: Lobby; + + } + export interface GetMatchmakingQueueRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -1427,8 +1929,13 @@ declare module PlayFabMultiplayerModels { } export interface GetMatchmakingTicketResult extends PlayFabModule.IPlayFabResultCommon { - /** The reason why the current ticket was canceled. This field is only set if the ticket is in canceled state. */ + /** + * The reason why the current ticket was canceled. This field is only set if the ticket is in canceled state. Please retry + * if CancellationReason is RetryRequired. + */ CancellationReasonString?: string; + /** Change number used for differentiating older matchmaking status updates from newer ones. */ + ChangeNumber?: number; /** The server date and time at which ticket was created. */ Created: string; /** The Creator's entity key. */ @@ -1471,6 +1978,8 @@ declare module PlayFabMultiplayerModels { } export interface GetMatchResult extends PlayFabModule.IPlayFabResultCommon { + /** A string that is used by players that are matched together to join an arranged lobby. */ + ArrangementString?: string; /** The Id of a match. */ MatchId: string; /** A list of Users that are matched together, along with their team assignments. */ @@ -1486,12 +1995,8 @@ declare module PlayFabMultiplayerModels { } export interface GetMultiplayerServerDetailsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The guid string build ID of the multiplayer server to get details for. */ - BuildId: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The region the multiplayer server is located in to get details for. */ - Region: string; /** * The title generated guid string session ID of the multiplayer server to get details for. This is to keep track of * multiplayer server sessions. @@ -1507,12 +2012,14 @@ declare module PlayFabMultiplayerModels { ConnectedPlayers?: ConnectedPlayer[]; /** The fully qualified domain name of the virtual machine that is hosting this multiplayer server. */ FQDN?: string; - /** The IPv4 address of the virtual machine that is hosting this multiplayer server. */ + /** The public IPv4 address of the virtual machine that is hosting this multiplayer server. */ IPV4Address?: string; /** The time (UTC) at which a change in the multiplayer server state was observed. */ LastStateTransitionTime?: string; /** The ports the multiplayer server uses. */ Ports?: Port[]; + /** The list of public Ipv4 addresses associated with the server. */ + PublicIPV4Addresses?: PublicIpAddress[]; /** The region the multiplayer server is located in. */ Region?: string; /** The string server ID of the multiplayer server generated by PlayFab. */ @@ -1660,15 +2167,133 @@ declare module PlayFabMultiplayerModels { } export interface InstrumentationConfiguration { + /** Designates whether windows instrumentation configuration will be enabled for this Build */ + IsEnabled?: boolean; /** - * The list of processes to be monitored on a VM for this build. Providing processes will turn on performance metrics - * collection for this build. Process names should not include extensions. If the game server process is: GameServer.exe; - * then, ProcessesToMonitor = [ GameServer ] + * This property is deprecated, use IsEnabled. The list of processes to be monitored on a VM for this build. Providing + * processes will turn on performance metrics collection for this build. Process names should not include extensions. If + * the game server process is: GameServer.exe; then, ProcessesToMonitor = [ GameServer ] */ ProcessesToMonitor?: string[]; } + export interface InviteToLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity invited to the lobby. */ + InviteeEntity?: EntityKey; + /** The id of the lobby. */ + LobbyId?: string; + /** The member entity sending the invite. Must be a member of the lobby. */ + MemberEntity?: EntityKey; + + } + + export interface JoinArrangedLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * The policy indicating who is allowed to join the lobby, and the visibility to queries. May be 'Public', 'Friends' or + * 'Private'. Public means the lobby is both visible in queries and any player may join, including invited players. Friends + * means that users who are bidirectional friends of members in the lobby may search to find friend lobbies, to retrieve + * its connection string. Private means the lobby is not visible in queries, and a player must receive an invitation to + * join. Defaults to 'Public' on creation. Can only be changed by the lobby owner. + */ + AccessPolicy?: string; + /** + * A field which indicates which lobby the user will be joining. This field is opaque to everyone except the Lobby service + * and the creator of the arrangementString (Matchmaking). This string defines a unique identifier for the arranged lobby + * as well as the title and member the string is valid for. Arrangement strings have an expiration. + */ + ArrangementString: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The maximum number of players allowed in the lobby. The value must be between 2 and 128. */ + MaxPlayers: number; + /** + * The private key-value pairs used by the member to communicate information to other members and the owner. Visible to all + * entities in the lobby. At most 30 key-value pairs may be stored here, keys are limited to 30 characters and values to + * 1000. The total size of all memberData values may not exceed 4096 bytes. Keys are case sensitive. + */ + MemberData?: { [key: string]: string | null }; + /** The member entity who is joining the lobby. The first member to join will be the lobby owner. */ + MemberEntity: EntityKey; + /** + * The policy for how a new owner is chosen. May be 'Automatic', 'Manual' or 'None'. Can only be specified by clients. If + * client-owned and 'Automatic' - The Lobby service will automatically assign another connected owner when the current + * owner leaves or disconnects. The useConnections property must be true. If client - owned and 'Manual' - Ownership is + * protected as long as the current owner is connected. If the current owner leaves or disconnects any member may set + * themselves as the current owner. The useConnections property must be true. If client-owned and 'None' - Any member can + * set ownership. The useConnections property can be either true or false. + */ + OwnerMigrationPolicy?: string; + /** + * A setting that controls whether only the lobby owner can send invites to join the lobby. When true, only the lobby owner + * can send invites. When false or not specified, any member can send invites. Defaults to false if not specified. + * Restricted to client owned lobbies. + */ + RestrictInvitesToLobbyOwner: boolean; + /** + * A setting to control whether connections are used. Defaults to true. When true, notifications are sent to subscribed + * players, disconnect detection removes connectionHandles, only owner migration policies using connections are allowed, + * and lobbies must have at least one connected member to be searchable or be a server hosted lobby with a connected + * server. If false, then notifications are not sent, connections are not allowed, and lobbies do not need connections to + * be searchable. + */ + UseConnections: boolean; + + } + + export interface JoinLobbyAsServerRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * A field which indicates which lobby the game_server will be joining. This field is opaque to everyone except the Lobby + * service. + */ + ConnectionString: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * The private key-value pairs which are visible to all entities in the lobby but can only be modified by the joined + * server.At most 30 key - value pairs may be stored here, keys are limited to 30 characters and values to 1000.The total + * size of all serverData values may not exceed 4096 bytes. + */ + ServerData?: { [key: string]: string | null }; + /** + * The game_server entity which is joining the Lobby. If a different game_server entity has already joined the request will + * fail unless the joined entity is disconnected, in which case the incoming game_server entity will replace the + * disconnected entity. + */ + ServerEntity: EntityKey; + + } + + export interface JoinLobbyAsServerResult extends PlayFabModule.IPlayFabResultCommon { + /** Successfully joined lobby's id. */ + LobbyId: string; + + } + + export interface JoinLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** A field which indicates which lobby the user will be joining. This field is opaque to everyone except the Lobby service. */ + ConnectionString?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * The private key-value pairs used by the member to communicate information to other members and the owner. Visible to all + * entities in the lobby. At most 30 key-value pairs may be stored here, keys are limited to 30 characters and values to + * 1000. The total size of all memberData values may not exceed 4096 bytes.Keys are case sensitive. + */ + MemberData?: { [key: string]: string | null }; + /** The member entity who is joining the lobby. */ + MemberEntity?: EntityKey; + + } + + export interface JoinLobbyResult extends PlayFabModule.IPlayFabResultCommon { + /** Successfully joined lobby's id. */ + LobbyId: string; + + } + export interface JoinMatchmakingTicketRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -1685,6 +2310,29 @@ declare module PlayFabMultiplayerModels { } + export interface LeaveLobbyAsServerRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The id of the lobby. */ + LobbyId: string; + /** + * The game_server entity leaving the lobby. If the game_server was subscribed to notifications, it will be unsubscribed. + * If a the given game_server entity is not in the lobby, it will fail. + */ + ServerEntity: EntityKey; + + } + + export interface LeaveLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The id of the lobby. */ + LobbyId?: string; + /** The member entity leaving the lobby. */ + MemberEntity?: EntityKey; + + } + export interface LinearDifferenceRuleExpansion { /** This value gets added to Difference at every expansion interval. */ Delta: number; @@ -1844,10 +2492,18 @@ declare module PlayFabMultiplayerModels { CustomTags?: { [key: string]: string | null }; /** The container images we want to list tags for. */ ImageName?: string; + /** The page size for the request. */ + PageSize?: number; + /** The skip token for the paged request. */ + SkipToken?: string; } export interface ListContainerImageTagsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The page size on the response. */ + PageSize: number; + /** The skip token for the paged response. */ + SkipToken?: string; /** The list of tags for a particular container image. */ Tags?: string[]; @@ -1868,7 +2524,7 @@ declare module PlayFabMultiplayerModels { export interface ListMatchmakingTicketsForPlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity key for which to find the ticket Ids. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The name of the queue to find a match for. */ QueueName: string; @@ -1929,6 +2585,8 @@ declare module PlayFabMultiplayerModels { * deployed for the title. */ IncludeAllRegions?: boolean; + /** Indicates the Routing Preference used by the Qos servers. The default Routing Preference is Microsoft */ + RoutingPreference?: string; } @@ -1942,10 +2600,30 @@ declare module PlayFabMultiplayerModels { } + export interface ListSecretSummariesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The page size for the request. */ + PageSize?: number; + /** The skip token for the paged request. */ + SkipToken?: string; + + } + + export interface ListSecretSummariesResponse extends PlayFabModule.IPlayFabResultCommon { + /** The page size on the response. */ + PageSize: number; + /** The list of game secret. */ + SecretSummaries?: SecretSummary[]; + /** The skip token for the paged response. */ + SkipToken?: string; + + } + export interface ListServerBackfillTicketsForPlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity key for which to find the ticket Ids. */ + /** The entity to perform this action on. */ Entity: EntityKey; /** The name of the queue the tickets are in. */ QueueName: string; @@ -1994,6 +2672,84 @@ declare module PlayFabMultiplayerModels { } + export interface Lobby { + /** A setting indicating who is allowed to join this lobby, as well as see it in queries. */ + AccessPolicy: string; + /** A number that increments once for each request that modifies the lobby. */ + ChangeNumber: number; + /** + * A string used to join the lobby. This field is populated by the Lobby service. Invites are performed by communicating + * this connectionString to other players. + */ + ConnectionString: string; + /** Lobby data. */ + LobbyData?: { [key: string]: string | null }; + /** Id to uniquely identify a lobby. */ + LobbyId: string; + /** The maximum number of players allowed in the lobby. */ + MaxPlayers: number; + /** Array of all lobby members. */ + Members?: Member[]; + /** A setting indicating whether members are allowed to join this lobby. When Locked new members are prevented from joining. */ + MembershipLock: string; + /** The client or server entity which owns this lobby. */ + Owner?: EntityKey; + /** A setting indicating the owner migration policy. If server owned, this field is not present. */ + OwnerMigrationPolicy?: string; + /** + * An opaque string stored on a SubscribeToLobbyResource call, which indicates the connection an owner or member has with + * PubSub. + */ + PubSubConnectionHandle?: string; + /** + * A setting that controls lobby invites. When true only owners can invite new players, when false all members area allowed + * to invite. + */ + RestrictInvitesToLobbyOwner: boolean; + /** Search data. */ + SearchData?: { [key: string]: string | null }; + /** Preview: Lobby joined server. This is not the server owner, rather the server that has joined a client owned lobby. */ + Server?: LobbyServer; + /** A flag which determines if connections are used. Defaults to true. Only set on create. */ + UseConnections: boolean; + + } + + export interface LobbyEmptyResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface LobbyServer { + /** Opaque string, stored on a Subscribe call, which indicates the connection a joined server has with PubSub. */ + PubSubConnectionHandle?: string; + /** Key-value pairs specific to the joined server. */ + ServerData?: { [key: string]: string | null }; + /** The server entity key. */ + ServerEntity?: EntityKey; + + } + + export interface LobbySummary { + /** + * A string used to join the lobby.This field is populated by the Lobby service.Invites are performed by communicating this + * connectionString to other players. + */ + ConnectionString: string; + /** The current number of players in the lobby. */ + CurrentPlayers: number; + /** Id to uniquely identify a lobby. */ + LobbyId: string; + /** The maximum number of players allowed in the lobby. */ + MaxPlayers: number; + /** A setting indicating whether members are allowed to join this lobby. When Locked new members are prevented from joining. */ + MembershipLock?: string; + /** The client or server entity which owns this lobby. */ + Owner: EntityKey; + /** Search data. */ + SearchData?: { [key: string]: string | null }; + + } + export interface MatchmakingPlayer { /** The user's attributes custom to the title. */ Attributes?: MatchmakingPlayerAttributes; @@ -2024,6 +2780,8 @@ declare module PlayFabMultiplayerModels { } export interface MatchmakingQueueConfig { + /** This is the buildAlias that will be used to allocate the multiplayer server for the match. */ + BuildAliasParams?: BuildAliasParams; /** This is the buildId that will be used to allocate the multiplayer server for the match. */ BuildId?: string; /** List of difference rules used to find an optimal match. */ @@ -2100,6 +2858,44 @@ declare module PlayFabMultiplayerModels { } + export interface Member { + /** Key-value pairs specific to member. */ + MemberData?: { [key: string]: string | null }; + /** The member entity key. */ + MemberEntity?: EntityKey; + /** Opaque string, stored on a Subscribe call, which indicates the connection an owner or member has with PubSub. */ + PubSubConnectionHandle?: string; + + } + + type MembershipLock = "Unlocked" + + | "Locked"; + + export interface MonitoringApplicationConfiguration { + /** Asset which contains the monitoring application files and scripts. */ + AssetReference: AssetReference; + /** Execution script name, this will be the main executable for the monitoring application. */ + ExecutionScriptName: string; + /** Installation script name, this will be run before the ExecutionScript. */ + InstallationScriptName?: string; + /** Timespan the monitoring application will be kept alive when running from the start of the VM */ + OnStartRuntimeInMinutes?: number; + + } + + export interface MonitoringApplicationConfigurationParams { + /** Asset which contains the monitoring application files and scripts. */ + AssetReference: AssetReferenceParams; + /** Execution script name, this will be the main executable for the monitoring application. */ + ExecutionScriptName: string; + /** Installation script name, this will be run before the ExecutionScript. */ + InstallationScriptName?: string; + /** Timespan the monitoring application will be kept alive when running from the start of the VM */ + OnStartRuntimeInMinutes?: number; + + } + export interface MultiplayerServerSummary { /** The connected players in the multiplayer server. */ ConnectedPlayers?: ConnectedPlayer[]; @@ -2119,6 +2915,7 @@ declare module PlayFabMultiplayerModels { } type OsPlatform = "Windows" + | "Linux"; export interface OverrideDouble { @@ -2133,6 +2930,67 @@ declare module PlayFabMultiplayerModels { } + type OwnerMigrationPolicy = "None" + + | "Automatic" + | "Manual" + | "Server"; + + export interface PaginationRequest { + /** Continuation token returned as a result in a previous FindLobbies call. Cannot be specified by clients. */ + ContinuationToken?: string; + /** The number of lobbies that should be retrieved. Cannot be specified by servers, clients may specify any value up to 50 */ + PageSizeRequested?: number; + + } + + export interface PaginationResponse { + /** Continuation token returned by server call. Not returned for clients */ + ContinuationToken?: string; + /** The number of lobbies that matched the search request. */ + TotalMatchedLobbyCount?: number; + + } + + export interface PartyInvitationConfiguration { + /** + * The list of PlayFab EntityKeys that the invitation allows to authenticate into the network. If this list is empty, all + * users are allowed to authenticate using the invitation's identifier. This list may contain no more than 1024 items. + */ + EntityKeys?: EntityKey[]; + /** The invite identifier for this party. If this value is specified, it must be no longer than 127 characters. */ + Identifier?: string; + /** Controls which participants can revoke this invite. */ + Revocability?: string; + + } + + type PartyInvitationRevocability = "Creator" + + | "Anyone"; + + export interface PartyNetworkConfiguration { + /** Controls whether and how to support direct peer-to-peer connection attempts among devices in the network. */ + DirectPeerConnectivityOptions?: string; + /** The maximum number of devices allowed to connect to the network. Must be between 1 and 128, inclusive. */ + MaxDevices: number; + /** The maximum number of devices allowed per user. Must be greater than 0. */ + MaxDevicesPerUser: number; + /** The maximum number of endpoints allowed per device. Must be between 0 and 32, inclusive. */ + MaxEndpointsPerDevice: number; + /** The maximum number of unique users allowed in the network. Must be greater than 0. */ + MaxUsers: number; + /** The maximum number of users allowed per device. Must be between 1 and 8, inclusive. */ + MaxUsersPerDevice: number; + /** + * An optionally-specified configuration for the initial invitation for this party. If not provided, default configuration + * values will be used: a title-unique invitation identifier will be generated, the revocability will be Anyone, and the + * EntityID list will be empty. + */ + PartyInvitationConfiguration?: PartyInvitationConfiguration; + + } + export interface Port { /** The name for the port. */ Name: string; @@ -2144,8 +3002,19 @@ declare module PlayFabMultiplayerModels { } type ProtocolType = "TCP" + | "UDP"; + export interface PublicIpAddress { + /** FQDN of the public IP */ + FQDN: string; + /** Server IP Address */ + IpAddress: string; + /** Routing Type of the public IP. */ + RoutingType: string; + + } + export interface QosServer { /** The region the QoS server is located in. */ Region?: string; @@ -2216,6 +3085,18 @@ declare module PlayFabMultiplayerModels { } + export interface RemoveMemberFromLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The id of the lobby. */ + LobbyId?: string; + /** The member entity to be removed from the lobby. */ + MemberEntity?: EntityKey; + /** If true, removed member can never rejoin this lobby. */ + PreventRejoin: boolean; + + } + export interface RequestMultiplayerServerRequest extends PlayFabModule.IPlayFabRequestCommon { /** The identifiers of the build alias to use for the request. */ BuildAliasParams?: BuildAliasParams; @@ -2234,8 +3115,8 @@ declare module PlayFabMultiplayerModels { */ PreferredRegions: string[]; /** - * Data encoded as a string that is passed to the game server when requested. This can be used to to communicate - * information such as game mode or map through the request flow. + * Data encoded as a string that is passed to the game server when requested. This can be used to communicate information + * such as game mode or map through the request flow. Maximum size is 8KB */ SessionCookie?: string; /** A guid string session ID created track the multiplayer server session over its life. */ @@ -2250,12 +3131,14 @@ declare module PlayFabMultiplayerModels { ConnectedPlayers?: ConnectedPlayer[]; /** The fully qualified domain name of the virtual machine that is hosting this multiplayer server. */ FQDN?: string; - /** The IPv4 address of the virtual machine that is hosting this multiplayer server. */ + /** The public IPv4 address of the virtual machine that is hosting this multiplayer server. */ IPV4Address?: string; /** The time (UTC) at which a change in the multiplayer server state was observed. */ LastStateTransitionTime?: string; /** The ports the multiplayer server uses. */ Ports?: Port[]; + /** The list of public Ipv4 addresses associated with the server. */ + PublicIPV4Addresses?: PublicIpAddress[]; /** The region the multiplayer server is located in. */ Region?: string; /** The string server ID of the multiplayer server generated by PlayFab. */ @@ -2269,6 +3152,38 @@ declare module PlayFabMultiplayerModels { } + export interface RequestPartyServiceRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The network configuration for this request. */ + NetworkConfiguration: PartyNetworkConfiguration; + /** A guid string party ID created track the party session over its life. */ + PartyId?: string; + /** A player entity Id on behalf of whom the request is being made. */ + PlayFabId?: string; + /** + * The preferred regions to request a party session from. The party service will iterate through the regions in the + * specified order and allocate a party session from the first one that is available. + */ + PreferredRegions: string[]; + + } + + export interface RequestPartyServiceResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * The invitation identifier supplied in the PartyInvitationConfiguration, or the PlayFab-generated guid if none was + * supplied. + */ + InvitationId?: string; + /** The guid string party ID of the party session. */ + PartyId?: string; + /** The region the party session is located in. */ + Region?: string; + /** A base-64 encoded string containing the serialized network descriptor for this party. */ + SerializedNetworkDescriptor?: string; + + } + export interface RolloverContainerRegistryCredentialsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -2285,6 +3200,10 @@ declare module PlayFabMultiplayerModels { } + type RoutingType = "Microsoft" + + | "Internet"; + export interface Schedule { /** A short description about this schedule. For example, "Game launch on July 15th". */ Description?: string; @@ -2312,6 +3231,26 @@ declare module PlayFabMultiplayerModels { } + export interface Secret { + /** Optional secret expiration date. */ + ExpirationDate?: string; + /** A name for the secret. This is used to reference secrets in build configurations. */ + Name: string; + /** Secret value. */ + Value: string; + + } + + export interface SecretSummary { + /** Optional secret expiration date. */ + ExpirationDate?: string; + /** The name of the secret. */ + Name?: string; + /** The secret version auto-generated after upload. */ + Version?: string; + + } + export interface ServerDetails { /** The fully qualified domain name of the virtual machine that is hosting this multiplayer server. */ Fqdn?: string; @@ -2321,10 +3260,24 @@ declare module PlayFabMultiplayerModels { Ports?: Port[]; /** The server's region. */ Region?: string; + /** The string server ID of the multiplayer server generated by PlayFab. */ + ServerId?: string; + + } + + export interface ServerResourceConstraintParams { + /** The maximum number of cores that each server is allowed to use. */ + CpuLimit: number; + /** + * The maximum number of GiB of memory that each server is allowed to use. WARNING: After exceeding this limit, the server + * will be killed + */ + MemoryLimitGB: number; } type ServerType = "Container" + | "Process"; export interface SetIntersectionRule { @@ -2365,7 +3318,7 @@ declare module PlayFabMultiplayerModels { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** The matchmaking queue config. */ - MatchmakingQueue?: MatchmakingQueueConfig; + MatchmakingQueue: MatchmakingQueueConfig; } @@ -2374,12 +3327,8 @@ declare module PlayFabMultiplayerModels { } export interface ShutdownMultiplayerServerRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The guid string build ID of the multiplayer server to delete. */ - BuildId: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The region of the multiplayer server to shut down. */ - Region: string; /** A guid string session ID of the multiplayer server to shut down. */ SessionId: string; @@ -2443,6 +3392,70 @@ declare module PlayFabMultiplayerModels { } + export interface SubscribeToLobbyResourceRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity performing the subscription. */ + EntityKey: EntityKey; + /** Opaque string, given to a client upon creating a connection with PubSub. */ + PubSubConnectionHandle: string; + /** + * The name of the resource to subscribe to. For LobbyChange subscriptions this is the lobbyId. For LobbyInvite + * subscriptions this should always be "@me". + */ + ResourceId: string; + /** Version number for the subscription of this resource. */ + SubscriptionVersion: number; + /** + * Subscription type. "LobbyChange" subscriptions allow a member or owner to receive notifications of lobby data, member or + * owner changes. "LobbyInvite" subscriptions allow a player to receive invites to lobbies. A player does not need to be a + * member of a lobby to receive lobby invites. + */ + Type: string; + + } + + export interface SubscribeToLobbyResourceResult extends PlayFabModule.IPlayFabResultCommon { + /** Topic will be returned in all notifications that are the result of this subscription. */ + Topic: string; + + } + + export interface SubscribeToMatchResourceRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity performing the subscription. The entity must be authorized to use this connectionHandle. */ + EntityKey: EntityKey; + /** + * Opaque string, given to a client upon creating a connection with PubSub. Notifications will be sent to the connection + * associated with this handle. + */ + PubSubConnectionHandle: string; + /** + * The name of the resource to subscribe to. It follows the format {queueName}|{ticketId} for MatchTicketStatusChange. For + * MatchInvite, ResourceId is @me. + */ + ResourceId: string; + /** Version number for the subscription of this resource. Current supported version must be 1. */ + SubscriptionVersion: number; + /** + * Subscription type. MatchInvite subscriptions are per-player. MatchTicketStatusChange subscriptions are per-ticket. + * Subscribe calls are idempotent. Subscribing on the same resource for the same connection results in success. + */ + Type: string; + + } + + export interface SubscribeToMatchResourceResult extends PlayFabModule.IPlayFabResultCommon { + /** Matchmaking resource */ + Topic: string; + + } + + type SubscriptionType = "LobbyChange" + + | "LobbyInvite"; + export interface TeamDifferenceRule { /** Description of the attribute used by this rule to match teams. */ Attribute: QueueRuleAttribute; @@ -2502,6 +3515,7 @@ declare module PlayFabMultiplayerModels { } type TitleMultiplayerServerEnabledStatus = "Initializing" + | "Enabled" | "Disabled"; @@ -2511,6 +3525,45 @@ declare module PlayFabMultiplayerModels { } + export interface UnsubscribeFromLobbyResourceRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity which performed the subscription. */ + EntityKey: EntityKey; + /** Opaque string, given to a client upon creating a connection with PubSub. */ + PubSubConnectionHandle: string; + /** The name of the resource to unsubscribe from. */ + ResourceId: string; + /** Version number passed for the subscription of this resource. */ + SubscriptionVersion: number; + /** Subscription type. */ + Type: string; + + } + + export interface UnsubscribeFromMatchResourceRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity performing the unsubscription. The entity must be authorized to use this connectionHandle. */ + EntityKey: EntityKey; + /** Opaque string, given to a client upon creating a connection with PubSub. */ + PubSubConnectionHandle: string; + /** + * The name of the resource to unsubscribe from. It follows the format {queueName}|{ticketId} for MatchTicketStatusChange. + * For MatchInvite, ResourceId is @me. + */ + ResourceId: string; + /** Version number for the unsubscription from this resource. */ + SubscriptionVersion: number; + /** Type of the subscription to be canceled. */ + Type: string; + + } + + export interface UnsubscribeFromMatchResourceResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface UntagContainerImageRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -2563,14 +3616,138 @@ declare module PlayFabMultiplayerModels { } + export interface UpdateLobbyAsServerRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The id of the lobby. */ + LobbyId: string; + /** + * The private key-value pairs which are visible to all entities in the lobby and modifiable by the joined server. + * Optional. Sets or updates key-value pairs on the lobby. Only the current lobby lobby server can set serverData. Keys may + * be an arbitrary string of at most 30 characters. The total size of all serverData values may not exceed 4096 bytes. + * Values are not individually limited. There can be up to 30 key-value pairs stored here. Keys are case sensitive. + */ + ServerData?: { [key: string]: string | null }; + /** + * The keys to delete from the lobby serverData. Optional. Optional. Deletes key-value pairs on the lobby. Only the current + * joined lobby server can delete serverData. All the specified keys will be removed from the serverData. Keys that do not + * exist in the lobby are a no-op. If the key to delete exists in the serverData (same request) it will result in a bad + * request. + */ + ServerDataToDelete?: string[]; + /** + * The lobby server. Optional. Set a different server as the joined server of the lobby (there can only be 1 joined + * server). When changing the server the previous server will automatically be unsubscribed. + */ + ServerEntity?: EntityKey; + + } + + export interface UpdateLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * The policy indicating who is allowed to join the lobby, and the visibility to queries. May be 'Public', 'Friends' or + * 'Private'. Public means the lobby is both visible in queries and any player may join, including invited players. Friends + * means that users who are bidirectional friends of members in the lobby may search to find friend lobbies, to retrieve + * its connection string. Private means the lobby is not visible in queries, and a player must receive an invitation to + * join. Defaults to 'Public' on creation. Can only be changed by the lobby owner. + */ + AccessPolicy?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * The private key-value pairs which are visible to all entities in the lobby. Optional. Sets or updates key-value pairs on + * the lobby. Only the current lobby owner can set lobby data. Keys may be an arbitrary string of at most 30 characters. + * The total size of all lobbyData values may not exceed 4096 bytes. Values are not individually limited. There can be up + * to 30 key-value pairs stored here. Keys are case sensitive. + */ + LobbyData?: { [key: string]: string | null }; + /** The keys to delete from the lobby LobbyData. Optional. Behaves similar to searchDataToDelete, but applies to lobbyData. */ + LobbyDataToDelete?: string[]; + /** The id of the lobby. */ + LobbyId?: string; + /** + * The maximum number of players allowed in the lobby. Updates the maximum allowed number of players in the lobby. Only the + * current lobby owner can set this. If set, the value must be greater than or equal to the number of members currently in + * the lobby. + */ + MaxPlayers?: number; + /** + * The private key-value pairs used by the member to communicate information to other members and the owner. Optional. Sets + * or updates new key-value pairs on the caller's member data. New keys will be added with their values and existing keys + * will be updated with the new values. Visible to all entities in the lobby. At most 30 key-value pairs may be stored + * here, keys are limited to 30 characters and values to 1000. The total size of all memberData values may not exceed 4096 + * bytes. Keys are case sensitive. Servers cannot specifiy this. + */ + MemberData?: { [key: string]: string | null }; + /** + * The keys to delete from the lobby MemberData. Optional. Deletes key-value pairs on the caller's member data. All the + * specified keys will be removed from the caller's member data. Keys that do not exist are a no-op. If the key to delete + * exists in the memberData (same request) it will result in a bad request. Servers cannot specifiy this. + */ + MemberDataToDelete?: string[]; + /** The member entity whose data is being modified. Servers cannot specify this. */ + MemberEntity?: EntityKey; + /** + * A setting indicating whether the lobby is locked. May be 'Unlocked' or 'Locked'. When Locked new members are not allowed + * to join. Defaults to 'Unlocked' on creation. Can only be changed by the lobby owner. + */ + MembershipLock?: string; + /** + * The lobby owner. Optional. Set to transfer ownership of the lobby. If client - owned and 'Automatic' - The Lobby service + * will automatically assign another connected owner when the current owner leaves or disconnects. useConnections must be + * true. If client - owned and 'Manual' - Ownership is protected as long as the current owner is connected. If the current + * owner leaves or disconnects any member may set themselves as the current owner. The useConnections property must be + * true. If client-owned and 'None' - Any member can set ownership. The useConnections property can be either true or + * false. For all client-owned lobbies when the owner leaves and a new owner can not be automatically selected - The owner + * field is set to null. For all client-owned lobbies when the owner disconnects and a new owner can not be automatically + * selected - The owner field remains unchanged and the current owner retains all owner abilities for the lobby. If + * server-owned (must be 'Server') - Any server can set ownership. The useConnections property must be true. + */ + Owner?: EntityKey; + /** + * A setting that controls whether only the lobby owner can send invites to join the lobby. When true, only the lobby owner + * can send invites. When false or not specified, any member can send invites. Will not modify current configuration if not + * specified. Restricted to client owned lobbies. + */ + RestrictInvitesToLobbyOwner?: boolean; + /** + * The public key-value pairs which allow queries to differentiate between lobbies. Optional. Sets or updates key-value + * pairs on the lobby for use with queries. Only the current lobby owner can set search data. New keys will be added with + * their values and existing keys will be updated with the new values. There can be up to 30 key-value pairs stored here. + * Keys are of the format string_key1, string_key2... string_key30 for string values, or number_key1, number_key2, ... + * number_key30 for numeric values. Numeric values are floats. Values can be at most 256 characters long. The total size of + * all searchData values may not exceed 1024 bytes.Keys are case sensitive. + */ + SearchData?: { [key: string]: string | null }; + /** + * The keys to delete from the lobby SearchData. Optional. Deletes key-value pairs on the lobby. Only the current lobby + * owner can delete search data. All the specified keys will be removed from the search data. Keys that do not exist in the + * lobby are a no-op.If the key to delete exists in the searchData (same request) it will result in a bad request. + */ + SearchDataToDelete?: string[]; + + } + export interface UploadCertificateRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; + /** Forces the certificate renewal if the certificate already exists. Default is false */ + ForceUpdate?: boolean; /** The game certificate to upload. */ GameCertificate: Certificate; } + export interface UploadSecretRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Forces the secret renewal if the secret already exists. Default is false */ + ForceUpdate?: boolean; + /** The game secret to add. */ + GameSecret: Secret; + + } + export interface VirtualMachineSummary { /** The virtual machine health status. */ HealthStatus?: string; @@ -2581,5 +3758,47 @@ declare module PlayFabMultiplayerModels { } + export interface VmStartupScriptConfiguration { + /** Optional port requests (name/protocol) that will be used by the VmStartupScript. Max of 5 requests. */ + PortRequests?: VmStartupScriptPortRequest[]; + /** Asset which contains the VmStartupScript script and any other required files. */ + VmStartupScriptAssetReference: AssetReference; + + } + + export interface VmStartupScriptParams { + /** Optional port requests (name/protocol) that will be used by the VmStartupScript. Max of 5 requests. */ + PortRequests?: VmStartupScriptPortRequestParams[]; + /** Asset which contains the VmStartupScript script and any other required files. */ + VmStartupScriptAssetReference: AssetReferenceParams; + + } + + export interface VmStartupScriptPortRequest { + /** The name for the port. */ + Name: string; + /** The protocol for the port. */ + Protocol: string; + + } + + export interface VmStartupScriptPortRequestParams { + /** The name for the port. */ + Name: string; + /** The protocol for the port. */ + Protocol: string; + + } + + export interface WindowsCrashDumpConfiguration { + /** See https://docs.microsoft.com/en-us/windows/win32/wer/collecting-user-mode-dumps for valid values. */ + CustomDumpFlags?: number; + /** See https://docs.microsoft.com/en-us/windows/win32/wer/collecting-user-mode-dumps for valid values. */ + DumpType?: number; + /** Designates whether automatic crash dump capturing will be enabled for this Build. */ + IsEnabled: boolean; + + } + } diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabProfilesApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabProfilesApi.d.ts index f04680ef..ce708bfc 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabProfilesApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabProfilesApi.d.ts @@ -8,44 +8,55 @@ declare module PlayFabProfilesModule { * Gets the global title access policy * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/getglobalpolicy */ - GetGlobalPolicy(request: PlayFabProfilesModels.GetGlobalPolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetGlobalPolicy(request: PlayFabProfilesModels.GetGlobalPolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the entity's profile. * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/getprofile */ - GetProfile(request: PlayFabProfilesModels.GetEntityProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetProfile(request: PlayFabProfilesModels.GetEntityProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the entity's profile. * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/getprofiles */ - GetProfiles(request: PlayFabProfilesModels.GetEntityProfilesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetProfiles(request: PlayFabProfilesModels.GetEntityProfilesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title player accounts associated with the given master player account. * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/gettitleplayersfrommasterplayeraccountids */ - GetTitlePlayersFromMasterPlayerAccountIds(request: PlayFabProfilesModels.GetTitlePlayersFromMasterPlayerAccountIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitlePlayersFromMasterPlayerAccountIds(request: PlayFabProfilesModels.GetTitlePlayersFromMasterPlayerAccountIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the title player accounts associated with the given XUIDs. + * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/gettitleplayersfromxboxliveids + */ + GetTitlePlayersFromXboxLiveIDs(request: PlayFabProfilesModels.GetTitlePlayersFromXboxLiveIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Update the display name of the entity + * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/setdisplayname + */ + SetDisplayName(request: PlayFabProfilesModels.SetDisplayNameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the global title access policy * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/setglobalpolicy */ - SetGlobalPolicy(request: PlayFabProfilesModels.SetGlobalPolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetGlobalPolicy(request: PlayFabProfilesModels.SetGlobalPolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the entity's language. The precedence hierarchy for communication to the player is Title Player Account * language, Master Player Account language, and then title default language if the first two aren't set or supported. * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/setprofilelanguage */ - SetProfileLanguage(request: PlayFabProfilesModels.SetProfileLanguageRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetProfileLanguage(request: PlayFabProfilesModels.SetProfileLanguageRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the profiles access policy * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/setprofilepolicy */ - SetProfilePolicy(request: PlayFabProfilesModels.SetEntityProfilePolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetProfilePolicy(request: PlayFabProfilesModels.SetEntityProfilePolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } declare module PlayFabProfilesModels { type EffectType = "Allow" + | "Deny"; export interface EntityDataObject { @@ -118,8 +129,6 @@ declare module PlayFabProfilesModels { Files?: { [key: string]: EntityProfileFileMetadata }; /** The language on this profile. */ Language?: string; - /** Leaderboard metadata for the entity. */ - LeaderboardMetadata?: string; /** The lineage of this profile. */ Lineage?: EntityLineage; /** The objects on this profile. */ @@ -131,6 +140,8 @@ declare module PlayFabProfilesModels { Permissions?: EntityPermissionStatement[]; /** The statistics on this profile. */ Statistics?: { [key: string]: EntityStatisticValue }; + /** A mapping of statistic name to the columns defined in the corresponding definition. */ + StatisticsColumnDetails?: { [key: string]: StatisticColumnCollection }; /** * The version number of the profile in persistent storage at the time of the read. Used for optional optimistic * concurrency during update. @@ -151,25 +162,13 @@ declare module PlayFabProfilesModels { } - export interface EntityStatisticChildValue { - /** Child name value, if child statistic */ - ChildName?: string; - /** Child statistic metadata */ - Metadata?: string; - /** Child statistic value */ - Value: number; - - } - export interface EntityStatisticValue { - /** Child statistic values */ - ChildStatistics?: { [key: string]: EntityStatisticChildValue }; - /** Statistic metadata */ + /** Metadata associated with the Statistic. */ Metadata?: string; /** Statistic name */ Name?: string; - /** Statistic value */ - Value?: number; + /** Statistic scores */ + Scores?: string[]; /** Statistic version */ Version: number; @@ -183,8 +182,10 @@ declare module PlayFabProfilesModels { * JSON string. */ DataAsObject?: boolean; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; + /** Determines whether the entity statistics will be returned in the entity profile. Default is false. */ + IncludeStatistics: boolean; } @@ -204,6 +205,8 @@ declare module PlayFabProfilesModels { DataAsObject?: boolean; /** Entity keys of the profiles to load. Must be between 1 and 25 */ Entities: EntityKey[]; + /** Determines whether the entity statistics will be returned in the entity profile. Default is false. */ + IncludeStatistics: boolean; } @@ -216,6 +219,8 @@ declare module PlayFabProfilesModels { export interface GetGlobalPolicyRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; } @@ -243,18 +248,60 @@ declare module PlayFabProfilesModels { } + export interface GetTitlePlayersFromProviderIDsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * Dictionary of provider identifiers mapped to title_player_account lineage. Missing lineage indicates the player either + * doesn't exist or doesn't play the requested title. + */ + TitlePlayerAccounts?: { [key: string]: EntityLineage }; + + } + + export interface GetTitlePlayersFromXboxLiveIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Xbox Sandbox the players had on their Xbox tokens. */ + Sandbox: string; + /** Optional ID of title to get players from, required if calling using a master_player_account. */ + TitleId?: string; + /** List of Xbox Live XUIDs */ + XboxLiveIds: string[]; + + } + type OperationTypes = "Created" + | "Updated" | "Deleted" | "None"; + export interface SetDisplayNameRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The new value to be set on Entity Profile's display name */ + DisplayName?: string; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** The expected version of a profile to perform this update on */ + ExpectedVersion?: number; + + } + + export interface SetDisplayNameResponse extends PlayFabModule.IPlayFabResultCommon { + /** The type of operation that occured on the profile's display name */ + OperationResult?: string; + /** The updated version of the profile after the display name update */ + VersionNumber?: number; + + } + export interface SetEntityProfilePolicyRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** The entity to perform this action on. */ Entity: EntityKey; /** The statements to include in the access policy. */ - Statements?: EntityPermissionStatement[]; + Statements: EntityPermissionStatement[]; } @@ -282,7 +329,7 @@ declare module PlayFabProfilesModels { export interface SetProfileLanguageRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The expected version of a profile to perform this update on */ ExpectedVersion?: number; @@ -299,5 +346,25 @@ declare module PlayFabProfilesModels { } + type StatisticAggregationMethod = "Last" + + | "Min" + | "Max" + | "Sum"; + + export interface StatisticColumn { + /** Aggregation method for calculating new value of a statistic. */ + AggregationMethod: string; + /** Name of the statistic column, as originally configured. */ + Name: string; + + } + + export interface StatisticColumnCollection { + /** Columns for the statistic defining the aggregation method for each column. */ + Columns?: StatisticColumn[]; + + } + } diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabProgressionApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabProgressionApi.d.ts new file mode 100644 index 00000000..00230005 --- /dev/null +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabProgressionApi.d.ts @@ -0,0 +1,815 @@ +/// + +declare module PlayFabProgressionModule { + export interface IPlayFabProgression { + ForgetAllCredentials(): void; + + /** + * Creates a new leaderboard definition. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/createleaderboarddefinition + */ + CreateLeaderboardDefinition(request: PlayFabProgressionModels.CreateLeaderboardDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Create a new entity statistic definition. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/createstatisticdefinition + */ + CreateStatisticDefinition(request: PlayFabProgressionModels.CreateStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes a leaderboard definition. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/deleteleaderboarddefinition + */ + DeleteLeaderboardDefinition(request: PlayFabProgressionModels.DeleteLeaderboardDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the specified entries from the given leaderboard. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/deleteleaderboardentries + */ + DeleteLeaderboardEntries(request: PlayFabProgressionModels.DeleteLeaderboardEntriesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Delete an entity statistic definition. Will delete all statistics on entity profiles and leaderboards. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/deletestatisticdefinition + */ + DeleteStatisticDefinition(request: PlayFabProgressionModels.DeleteStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Delete statistics on an entity profile. This will remove all rankings from associated leaderboards. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/deletestatistics + */ + DeleteStatistics(request: PlayFabProgressionModels.DeleteStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get the friend leaderboard for the specified entity. A maximum of 25 friend entries are listed in the leaderboard. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/getfriendleaderboardforentity + */ + GetFriendLeaderboardForEntity(request: PlayFabProgressionModels.GetFriendLeaderboardForEntityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get the leaderboard for a specific entity type and statistic. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/getleaderboard + */ + GetLeaderboard(request: PlayFabProgressionModels.GetEntityLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get the leaderboard around a specific entity. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/getleaderboardaroundentity + */ + GetLeaderboardAroundEntity(request: PlayFabProgressionModels.GetLeaderboardAroundEntityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets the specified leaderboard definition. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/getleaderboarddefinition + */ + GetLeaderboardDefinition(request: PlayFabProgressionModels.GetLeaderboardDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get the leaderboard limited to a set of entities. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/getleaderboardforentities + */ + GetLeaderboardForEntities(request: PlayFabProgressionModels.GetLeaderboardForEntitiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get current statistic definition information + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/getstatisticdefinition + */ + GetStatisticDefinition(request: PlayFabProgressionModels.GetStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets statistics for the specified entity. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/getstatistics + */ + GetStatistics(request: PlayFabProgressionModels.GetStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets statistics for the specified collection of entities. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/getstatisticsforentities + */ + GetStatisticsForEntities(request: PlayFabProgressionModels.GetStatisticsForEntitiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Increment a leaderboard version. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/incrementleaderboardversion + */ + IncrementLeaderboardVersion(request: PlayFabProgressionModels.IncrementLeaderboardVersionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Increment an entity statistic definition version. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/incrementstatisticversion + */ + IncrementStatisticVersion(request: PlayFabProgressionModels.IncrementStatisticVersionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Lists the leaderboard definitions defined for the Title. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/listleaderboarddefinitions + */ + ListLeaderboardDefinitions(request: PlayFabProgressionModels.ListLeaderboardDefinitionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get all current statistic definitions information + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/liststatisticdefinitions + */ + ListStatisticDefinitions(request: PlayFabProgressionModels.ListStatisticDefinitionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks an aggregation source from a statistic definition. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/unlinkaggregationsourcefromstatistic + */ + UnlinkAggregationSourceFromStatistic(request: PlayFabProgressionModels.UnlinkAggregationSourceFromStatisticRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks a leaderboard definition from it's linked statistic definition. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/unlinkleaderboardfromstatistic + */ + UnlinkLeaderboardFromStatistic(request: PlayFabProgressionModels.UnlinkLeaderboardFromStatisticRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Updates a leaderboard definition. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/updateleaderboarddefinition + */ + UpdateLeaderboardDefinition(request: PlayFabProgressionModels.UpdateLeaderboardDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Adds or updates entries on the specified leaderboard. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/updateleaderboardentries + */ + UpdateLeaderboardEntries(request: PlayFabProgressionModels.UpdateLeaderboardEntriesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Update an existing entity statistic definition. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/updatestatisticdefinition + */ + UpdateStatisticDefinition(request: PlayFabProgressionModels.UpdateStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Update statistics on an entity profile. Depending on the statistic definition, this may result in entity being ranked on + * various leaderboards. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/updatestatistics + */ + UpdateStatistics(request: PlayFabProgressionModels.UpdateStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + + } +} + +declare module PlayFabProgressionModels { + export interface CreateLeaderboardDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Leaderboard columns describing the sort directions, cannot be changed after creation. A maximum of 5 columns are + * allowed. + */ + Columns: LeaderboardColumn[]; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * The entity type being represented on the leaderboard. If it doesn't correspond to the PlayFab entity types, use + * 'external' as the type. + */ + EntityType: string; + /** [In Preview]: The configuration for the events emitted by this leaderboard. If not specified, no events will be emitted. */ + EventEmissionConfig?: LeaderboardEventEmissionConfig; + /** A name for the leaderboard, unique per title. */ + Name: string; + /** Maximum number of entries on this leaderboard */ + SizeLimit: number; + /** The version reset configuration for the leaderboard definition. */ + VersionConfiguration?: VersionConfiguration; + + } + + export interface CreateStatisticDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * [In Preview]: The list of statistic definition names whose scores must be aggregated towards this stat. If + * AggregationSource is specified, the entityType of this definition MUST be Title (making it a CommunityStat). Currently, + * only one aggregation source can be specified. + */ + AggregationSources?: string[]; + /** The columns for the statistic defining the aggregation method for each column. A maximum of 5 columns are allowed. */ + Columns?: StatisticColumn[]; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity type allowed to have score(s) for this statistic. */ + EntityType?: string; + /** [In Preview]: Configurations for different Statistics events that can be emitted by the service. */ + EventEmissionConfig?: StatisticsEventEmissionConfig; + /** Name of the statistic. Must be less than 150 characters. Restricted to a-Z, 0-9, '(', ')', '_', '-' and '.'. */ + Name: string; + /** The version reset configuration for the statistic definition. */ + VersionConfiguration?: VersionConfiguration; + + } + + export interface DeleteLeaderboardDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the leaderboard definition to delete. */ + Name: string; + + } + + export interface DeleteLeaderboardEntriesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The unique Ids of the entries to delete from the leaderboard. */ + EntityIds?: string[]; + /** The name of the leaderboard. */ + Name: string; + + } + + export interface DeleteStatisticDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Name of the statistic to delete. */ + Name: string; + + } + + export interface DeleteStatisticsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** Collection of statistics to remove from this entity. */ + Statistics: StatisticDelete[]; + + } + + export interface DeleteStatisticsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The entity id and type. */ + Entity?: EntityKey; + + } + + export interface EmptyResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface EntityKey { + /** Unique ID of the entity. */ + Id: string; + /** Entity type. See https://docs.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types */ + Type?: string; + + } + + export interface EntityLeaderboardEntry { + /** Entity's display name. */ + DisplayName?: string; + /** Entity identifier. */ + Entity?: EntityKey; + /** The time at which the last update to the entry was recorded on the server. */ + LastUpdated: string; + /** An opaque blob of data stored on the leaderboard entry. Note that the metadata is not used for ranking purposes. */ + Metadata?: string; + /** Position on the leaderboard. */ + Rank: number; + /** Scores for the entry. */ + Scores?: string[]; + + } + + export interface EntityStatistics { + /** The entity for which the statistics are returned. */ + EntityKey?: EntityKey; + /** The statistics for the given entity key. */ + Statistics?: EntityStatisticValue[]; + + } + + export interface EntityStatisticValue { + /** Metadata associated with the Statistic. */ + Metadata?: string; + /** Statistic name */ + Name?: string; + /** Statistic scores */ + Scores?: string[]; + /** Statistic version */ + Version: number; + + } + + type EventType = "None" + + | "Telemetry" + | "PlayStream"; + + type ExternalFriendSources = "None" + + | "Steam" + | "Facebook" + | "Xbox" + | "Psn" + | "All"; + + export interface GetEntityLeaderboardRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Name of the leaderboard. */ + LeaderboardName: string; + /** Maximum number of results to return from the leaderboard. Minimum 1, maximum 100. */ + PageSize: number; + /** Index position to start from. 1 is beginning of leaderboard. */ + StartingPosition?: number; + /** Optional version of the leaderboard, defaults to current version. */ + Version?: number; + + } + + export interface GetEntityLeaderboardResponse extends PlayFabModule.IPlayFabResultCommon { + /** Leaderboard columns describing the sort directions. */ + Columns?: LeaderboardColumn[]; + /** The number of entries on the leaderboard. */ + EntryCount: number; + /** The time the next scheduled reset will occur. Null if the leaderboard does not reset on a schedule. */ + NextReset?: string; + /** Individual entity rankings in the leaderboard, in sorted order by rank. */ + Rankings?: EntityLeaderboardEntry[]; + /** Version of the leaderboard being returned. */ + Version: number; + + } + + export interface GetFriendLeaderboardForEntityRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** + * Indicates which other platforms' friends should be included in the response. In HTTP, it is represented as a + * comma-separated list of platforms. + */ + ExternalFriendSources?: string; + /** Name of the leaderboard. */ + LeaderboardName: string; + /** Optional version of the leaderboard, defaults to current version. */ + Version?: number; + /** Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. */ + XboxToken?: string; + + } + + export interface GetLeaderboardAroundEntityRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** Name of the leaderboard. */ + LeaderboardName: string; + /** + * Number of surrounding entries to return (in addition to specified entity). In general, the number of ranks above and + * below will be split into half. For example, if the specified value is 10, 5 ranks above and 5 ranks below will be + * retrieved. However, the numbers will get skewed in either direction when the specified entity is towards the top or + * bottom of the leaderboard. Also, the number of entries returned can be lower than the value specified for entries at the + * bottom of the leaderboard. + */ + MaxSurroundingEntries: number; + /** Optional version of the leaderboard, defaults to current. */ + Version?: number; + + } + + export interface GetLeaderboardDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the leaderboard to retrieve the definition for. */ + Name: string; + + } + + export interface GetLeaderboardDefinitionResponse extends PlayFabModule.IPlayFabResultCommon { + /** Sort direction of the leaderboard columns, cannot be changed after creation. */ + Columns: LeaderboardColumn[]; + /** Created time, in UTC */ + Created: string; + /** + * The entity type being represented on the leaderboard. If it doesn't correspond to the PlayFab entity types, use + * 'external' as the type. + */ + EntityType: string; + /** [In Preview]: The configuration for the events emitted by this leaderboard. If not specified, no events will be emitted. */ + EventEmissionConfig?: LeaderboardEventEmissionConfig; + /** Last time, in UTC, leaderboard version was incremented. */ + LastResetTime?: string; + /** A name for the leaderboard, unique per title. */ + Name: string; + /** Maximum number of entries on this leaderboard */ + SizeLimit: number; + /** Latest Leaderboard version. */ + Version: number; + /** The version reset configuration for the leaderboard definition. */ + VersionConfiguration: VersionConfiguration; + + } + + export interface GetLeaderboardForEntitiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Collection of Entity IDs to include in the leaderboard. */ + EntityIds: string[]; + /** Name of the leaderboard. */ + LeaderboardName: string; + /** Optional version of the leaderboard, defaults to current. */ + Version?: number; + + } + + export interface GetStatisticDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Name of the statistic. Must be less than 150 characters. */ + Name: string; + + } + + export interface GetStatisticDefinitionResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of statistic definitions names this definition aggregates to. */ + AggregationDestinations?: string[]; + /** + * The list of statistic definitions names whose values must be aggregated towards this stat. If AggregationSource is + * specified, the entityType of this definition MUST be Title (making it a CommunityStat). Currently, only one aggregation + * source can be specified. + */ + AggregationSources?: string[]; + /** The columns for the statistic defining the aggregation method for each column. */ + Columns?: StatisticColumn[]; + /** Created time, in UTC */ + Created: string; + /** The entity type that can have this statistic. */ + EntityType?: string; + /** [In Preview]: Configurations for different Statistics events that can be emitted by the service. */ + EventEmissionConfig?: StatisticsEventEmissionConfig; + /** Last time, in UTC, statistic version was incremented. */ + LastResetTime?: string; + /** The list of leaderboards that are linked to this statistic definition. */ + LinkedLeaderboardNames?: string[]; + /** Name of the statistic. */ + Name?: string; + /** Statistic version. */ + Version: number; + /** The version reset configuration for the leaderboard definition. */ + VersionConfiguration?: VersionConfiguration; + + } + + export interface GetStatisticsForEntitiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Collection of Entity IDs to retrieve statistics for. */ + Entities: EntityKey[]; + /** The list of statistics to return for the user. If set to null, the current version of all statistics are returned. */ + StatisticNames?: string[]; + + } + + export interface GetStatisticsForEntitiesResponse extends PlayFabModule.IPlayFabResultCommon { + /** A mapping of statistic name to the columns defined in the corresponding definition. */ + ColumnDetails?: { [key: string]: StatisticColumnCollection }; + /** List of entities mapped to their statistics. Only the latest version of a statistic is returned. */ + EntitiesStatistics?: EntityStatistics[]; + + } + + export interface GetStatisticsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** The list of statistics to return for the user. If set to null, the current version of all statistics are returned. */ + StatisticNames?: string[]; + + } + + export interface GetStatisticsResponse extends PlayFabModule.IPlayFabResultCommon { + /** A mapping of statistic name to the columns defined in the corresponding definition. */ + ColumnDetails?: { [key: string]: StatisticColumnCollection }; + /** The entity id and type. */ + Entity?: EntityKey; + /** List of statistics keyed by Name. Only the latest version of a statistic is returned. */ + Statistics?: { [key: string]: EntityStatisticValue }; + + } + + export interface IncrementLeaderboardVersionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the leaderboard to increment the version for. */ + Name: string; + + } + + export interface IncrementLeaderboardVersionResponse extends PlayFabModule.IPlayFabResultCommon { + /** New Leaderboard version. */ + Version: number; + + } + + export interface IncrementStatisticVersionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Name of the statistic to increment the version of. */ + Name: string; + + } + + export interface IncrementStatisticVersionResponse extends PlayFabModule.IPlayFabResultCommon { + /** New statistic version. */ + Version: number; + + } + + export interface LeaderboardColumn { + /** + * If the value for this column is sourced from a statistic, details of the linked column. Null if the leaderboard is not + * linked. + */ + LinkedStatisticColumn?: LinkedStatisticColumn; + /** A name for the leaderboard column, unique per leaderboard definition. */ + Name: string; + /** The sort direction for this column. */ + SortDirection: string; + + } + + export interface LeaderboardDefinition { + /** Sort direction of the leaderboard columns, cannot be changed after creation. */ + Columns: LeaderboardColumn[]; + /** Created time, in UTC */ + Created: string; + /** + * The entity type being represented on the leaderboard. If it doesn't correspond to the PlayFab entity types, use + * 'external' as the type. + */ + EntityType: string; + /** [In Preview]: The configuration for the events emitted by this leaderboard. If not specified, no events will be emitted. */ + EventEmissionConfig?: LeaderboardEventEmissionConfig; + /** Last time, in UTC, leaderboard version was incremented. */ + LastResetTime?: string; + /** A name for the leaderboard, unique per title. */ + Name: string; + /** Maximum number of entries on this leaderboard */ + SizeLimit: number; + /** Latest Leaderboard version. */ + Version: number; + /** The version reset configuration for the leaderboard definition. */ + VersionConfiguration: VersionConfiguration; + + } + + export interface LeaderboardEntityRankOnVersionEndConfig { + /** The type of event to emit when the leaderboard version end. */ + EventType: string; + /** The maximum number of entity to return on leaderboard version end. Range is 1 to 1000. */ + RankLimit: number; + + } + + export interface LeaderboardEntryUpdate { + /** The unique Id for the entry. If using PlayFab Entities, this would be the entityId of the entity. */ + EntityId: string; + /** Arbitrary metadata to store along side the leaderboard entry, will be returned by all Leaderboard APIs. */ + Metadata?: string; + /** + * The scores for the leaderboard. The number of values provided here must match the number of columns in the Leaderboard + * definition. + */ + Scores?: string[]; + + } + + export interface LeaderboardEventEmissionConfig { + /** This event emits the top ranks of the leaderboard when the leaderboard version end. */ + EntityRankOnVersionEndConfig?: LeaderboardEntityRankOnVersionEndConfig; + /** This event is emitted when the leaderboard version end. */ + VersionEndConfig?: LeaderboardVersionEndConfig; + + } + + type LeaderboardSortDirection = "Descending" + + | "Ascending"; + + export interface LeaderboardVersionEndConfig { + /** The type of event to emit when the leaderboard version end. */ + EventType: string; + + } + + export interface LinkedStatisticColumn { + /** The name of the statistic column that this leaderboard column is sourced from. */ + LinkedStatisticColumnName: string; + /** The name of the statistic. */ + LinkedStatisticName: string; + + } + + export interface ListLeaderboardDefinitionsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The page size for the request. */ + PageSize?: number; + /** The skip token for the paged request. */ + SkipToken?: string; + + } + + export interface ListLeaderboardDefinitionsResponse extends PlayFabModule.IPlayFabResultCommon { + /** List of leaderboard definitions for the title. */ + LeaderboardDefinitions?: LeaderboardDefinition[]; + /** The page size on the response. */ + PageSize: number; + /** The skip token for the paged response. */ + SkipToken?: string; + + } + + export interface ListStatisticDefinitionsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The page size for the request. */ + PageSize?: number; + /** The skip token for the paged request. */ + SkipToken?: string; + + } + + export interface ListStatisticDefinitionsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The page size on the response. */ + PageSize: number; + /** The skip token for the paged response. */ + SkipToken?: string; + /** List of statistic definitions for the title. */ + StatisticDefinitions?: StatisticDefinition[]; + + } + + type ResetInterval = "Manual" + + | "Hour" + | "Day" + | "Week" + | "Month"; + + type StatisticAggregationMethod = "Last" + + | "Min" + | "Max" + | "Sum"; + + export interface StatisticColumn { + /** Aggregation method for calculating new value of a statistic. */ + AggregationMethod: string; + /** Name of the statistic column, as originally configured. */ + Name: string; + + } + + export interface StatisticColumnCollection { + /** Columns for the statistic defining the aggregation method for each column. */ + Columns?: StatisticColumn[]; + + } + + export interface StatisticDefinition { + /** The list of statistic definitions names this definition aggregates to. */ + AggregationDestinations?: string[]; + /** + * The list of statistic definitions names whose values must be aggregated towards this stat. If AggregationSource is + * specified, the entityType of this definition MUST be Title (making it a CommunityStat). Currently, only one aggregation + * source can be specified. + */ + AggregationSources?: string[]; + /** The columns for the statistic defining the aggregation method for each column. */ + Columns?: StatisticColumn[]; + /** Created time, in UTC */ + Created: string; + /** The entity type that can have this statistic. */ + EntityType?: string; + /** [In Preview]: Configurations for different Statistics events that can be emitted by the service. */ + EventEmissionConfig?: StatisticsEventEmissionConfig; + /** Last time, in UTC, statistic version was incremented. */ + LastResetTime?: string; + /** The list of leaderboards that are linked to this statistic definition. */ + LinkedLeaderboardNames?: string[]; + /** Name of the statistic. */ + Name?: string; + /** Statistic version. */ + Version: number; + /** The version reset configuration for the leaderboard definition. */ + VersionConfiguration?: VersionConfiguration; + + } + + export interface StatisticDelete { + /** Name of the statistic, as originally configured. */ + Name: string; + + } + + export interface StatisticsEventEmissionConfig { + /** Emitted when statistics are updated. */ + UpdateEventConfig?: StatisticsUpdateEventConfig; + + } + + export interface StatisticsUpdateEventConfig { + /** The event type to emit when statistics are updated. */ + EventType: string; + + } + + export interface StatisticUpdate { + /** + * A list of entities to which the statistic update must be aggregated to, in addition to the entity being updated. For + * example, for Group stats where the stat value is aggregated based on the group members, this would refer to the Group + * entity. For a community stat that's aggregated at the Title, it is not required to populate this property (Title is the + * default). + */ + AggregationTargetEntityKeys?: EntityKey[]; + /** Arbitrary metadata to store along side the statistic, will be returned by all Leaderboard APIs. */ + Metadata?: string; + /** Name of the statistic, as originally configured. */ + Name: string; + /** + * Statistic scores for the entity. This will be used in accordance with the aggregation method configured for the + * statistics.The maximum value allowed for each individual score is 9223372036854775807. The minimum value for each + * individual score is -9223372036854775807The values are formatted as strings to avoid interop issues with client + * libraries unable to handle 64bit integers. + */ + Scores?: string[]; + /** Optional field to indicate the version of the statistic to set. When empty defaults to the statistic's current version. */ + Version?: number; + + } + + export interface UnlinkAggregationSourceFromStatisticRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the statistic to unlink. */ + Name: string; + /** The name of the aggregation source statistic to unlink. */ + SourceStatisticName: string; + + } + + export interface UnlinkLeaderboardFromStatisticRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the leaderboard definition to unlink. */ + Name: string; + /** The name of the statistic definition to unlink. */ + StatisticName: string; + + } + + export interface UpdateLeaderboardDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** [In Preview]: The configuration for the events emitted by this leaderboard. If not specified, no events will be emitted. */ + EventEmissionConfig?: LeaderboardEventEmissionConfig; + /** The name of the leaderboard to update the definition for. */ + Name: string; + /** Maximum number of entries on this leaderboard */ + SizeLimit?: number; + /** The version reset configuration for the leaderboard definition. */ + VersionConfiguration?: VersionConfiguration; + + } + + export interface UpdateLeaderboardEntriesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entries to add or update on the leaderboard. */ + Entries?: LeaderboardEntryUpdate[]; + /** The name of the leaderboard. */ + LeaderboardName: string; + + } + + export interface UpdateStatisticDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** [In Preview]: Configurations for different Statistics events that can be emitted by the service. */ + EventEmissionConfig?: StatisticsEventEmissionConfig; + /** Name of the statistic. Must be less than 150 characters. Restricted to a-Z, 0-9, '(', ')', '_', '-' and '.'. */ + Name: string; + /** The version reset configuration for the statistic definition. */ + VersionConfiguration?: VersionConfiguration; + + } + + export interface UpdateStatisticsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** Collection of statistics to update, maximum 50. */ + Statistics: StatisticUpdate[]; + /** Optional transactionId of this update which can be used to ensure idempotence. */ + TransactionId?: string; + + } + + export interface UpdateStatisticsResponse extends PlayFabModule.IPlayFabResultCommon { + /** A mapping of statistic name to the columns defined in the corresponding definition. */ + ColumnDetails?: { [key: string]: StatisticColumnCollection }; + /** The entity id and type. */ + Entity?: EntityKey; + /** Updated entity profile statistics. */ + Statistics?: { [key: string]: EntityStatisticValue }; + + } + + export interface VersionConfiguration { + /** The maximum number of versions of this leaderboard/statistic that can be queried. */ + MaxQueryableVersions: number; + /** + * Reset interval that statistics or leaderboards will reset on. When using Manual intervalthe reset can only be increased + * by calling the Increase version API. When using Hour interval the resetwill occur at the start of the next hour UTC + * time. When using Day interval the reset will occur at thestart of the next day in UTC time. When using the Week interval + * the reset will occur at the start ofthe next Monday in UTC time. When using Month interval the reset will occur at the + * start of the nextmonth in UTC time. + */ + ResetInterval: string; + + } + + +} diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabServerApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabServerApi.d.ts index 622b4338..47884a40 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabServerApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabServerApi.d.ts @@ -5,28 +5,34 @@ declare module PlayFabServerModule { ForgetAllCredentials(): void; /** - * Increments the character's balance of the specified virtual currency by the stated amount + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Increments the character's balance of the specified virtual currency by the stated amount * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/addcharactervirtualcurrency */ - AddCharacterVirtualCurrency(request: PlayFabServerModels.AddCharacterVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddCharacterVirtualCurrency(request: PlayFabServerModels.AddCharacterVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds the Friend user to the friendlist of the user with PlayFabId. At least one of * FriendPlayFabId,FriendUsername,FriendEmail, or FriendTitleDisplayName should be initialized. * https://docs.microsoft.com/rest/api/playfab/server/friend-list-management/addfriend */ - AddFriend(request: PlayFabServerModels.AddFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddFriend(request: PlayFabServerModels.AddFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds the specified generic service identifier to the player's PlayFab account. This is designed to allow for a PlayFab * ID lookup of any arbitrary service identifier a title wants to add. This identifier should never be used as * authentication credentials, as the intent is that it is easily accessible by other players. * https://docs.microsoft.com/rest/api/playfab/server/account-management/addgenericid */ - AddGenericID(request: PlayFabServerModels.AddGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddGenericID(request: PlayFabServerModels.AddGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Adds or updates a contact email to the specified player's profile. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/addorupdatecontactemail + */ + AddOrUpdateContactEmail(request: PlayFabServerModels.AddOrUpdateContactEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds a given tag to a player profile. The tag's namespace is automatically generated based on the source of the tag. * https://docs.microsoft.com/rest/api/playfab/server/playstream/addplayertag */ - AddPlayerTag(request: PlayFabServerModels.AddPlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddPlayerTag(request: PlayFabServerModels.AddPlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds users to the set of those able to update both the shared data, as well as the set of users in the group. Only users * in the group (and the server) can add new members. Shared Groups are designed for sharing data between a very small @@ -34,32 +40,35 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/server/shared-group-data/addsharedgroupmembers */ - AddSharedGroupMembers(request: PlayFabServerModels.AddSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddSharedGroupMembers(request: PlayFabServerModels.AddSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Increments the user's balance of the specified virtual currency by the stated amount + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Increments the user's balance of the specified virtual currency by the stated amount * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/adduservirtualcurrency */ - AddUserVirtualCurrency(request: PlayFabServerModels.AddUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddUserVirtualCurrency(request: PlayFabServerModels.AddUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Validated a client's session ticket, and if successful, returns details for that user * https://docs.microsoft.com/rest/api/playfab/server/authentication/authenticatesessionticket */ - AuthenticateSessionTicket(request: PlayFabServerModels.AuthenticateSessionTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AuthenticateSessionTicket(request: PlayFabServerModels.AuthenticateSessionTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Awards the specified users the specified Steam achievements * https://docs.microsoft.com/rest/api/playfab/server/platform-specific-methods/awardsteamachievement */ - AwardSteamAchievement(request: PlayFabServerModels.AwardSteamAchievementRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AwardSteamAchievement(request: PlayFabServerModels.AwardSteamAchievementRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Bans users by PlayFab ID with optional IP address, or MAC address for the provided game. + * Bans users by PlayFab ID with optional IP address for the provided game. * https://docs.microsoft.com/rest/api/playfab/server/account-management/banusers */ - BanUsers(request: PlayFabServerModels.BanUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + BanUsers(request: PlayFabServerModels.BanUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Consume uses of a consumable item. When all uses are consumed, it will be removed from the player's inventory. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Consume uses of a consumable item. When all uses are consumed, it will be removed from the player's + * inventory. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/consumeitem */ - ConsumeItem(request: PlayFabServerModels.ConsumeItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ConsumeItem(request: PlayFabServerModels.ConsumeItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Requests the creation of a shared group object, containing key/value pairs which may be updated by all members of the * group. When created by a server, the group will initially have no members. Shared Groups are designed for sharing data @@ -67,92 +76,105 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/server/shared-group-data/createsharedgroup */ - CreateSharedGroup(request: PlayFabServerModels.CreateSharedGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateSharedGroup(request: PlayFabServerModels.CreateSharedGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes the specific character ID from the specified user. * https://docs.microsoft.com/rest/api/playfab/server/characters/deletecharacterfromuser */ - DeleteCharacterFromUser(request: PlayFabServerModels.DeleteCharacterFromUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteCharacterFromUser(request: PlayFabServerModels.DeleteCharacterFromUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes a user's player account from a title and deletes all associated data * https://docs.microsoft.com/rest/api/playfab/server/account-management/deleteplayer */ - DeletePlayer(request: PlayFabServerModels.DeletePlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeletePlayer(request: PlayFabServerModels.DeletePlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes title-specific custom properties for a player + * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/deleteplayercustomproperties + */ + DeletePlayerCustomProperties(request: PlayFabServerModels.DeletePlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes push notification template for title * https://docs.microsoft.com/rest/api/playfab/server/account-management/deletepushnotificationtemplate */ - DeletePushNotificationTemplate(request: PlayFabServerModels.DeletePushNotificationTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeletePushNotificationTemplate(request: PlayFabServerModels.DeletePushNotificationTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a shared group, freeing up the shared group ID to be reused for a new group. Shared Groups are designed for * sharing data between a very small number of players, please see our guide: * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/server/shared-group-data/deletesharedgroup */ - DeleteSharedGroup(request: PlayFabServerModels.DeleteSharedGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteSharedGroup(request: PlayFabServerModels.DeleteSharedGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Inform the matchmaker that a Game Server Instance is removed. - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/deregistergame - */ - DeregisterGame(request: PlayFabServerModels.DeregisterGameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Returns the result of an evaluation of a Random Result Table - the ItemId from the game Catalog which would have been - * added to the player inventory, if the Random Result Table were added via a Bundle or a call to UnlockContainer. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Returns the result of an evaluation of a Random Result Table - the ItemId from the game Catalog which would + * have been added to the player inventory, if the Random Result Table were added via a Bundle or a call to + * UnlockContainer. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/evaluaterandomresulttable */ - EvaluateRandomResultTable(request: PlayFabServerModels.EvaluateRandomResultTableRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + EvaluateRandomResultTable(request: PlayFabServerModels.EvaluateRandomResultTableRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Executes a CloudScript function, with the 'currentPlayerId' variable set to the specified PlayFabId parameter value. + * Executes a CloudScript function, with the 'currentPlayerId' set to the PlayFab ID of the authenticated player. The + * PlayFab ID is the entity ID of the player's master_player_account entity. * https://docs.microsoft.com/rest/api/playfab/server/server-side-cloud-script/executecloudscript */ - ExecuteCloudScript(request: PlayFabServerModels.ExecuteCloudScriptServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ExecuteCloudScript(request: PlayFabServerModels.ExecuteCloudScriptServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Starts an export for the player profiles in a segment. This API creates a snapshot of all the player profiles which + * match the segment definition at the time of the API call. Profiles which change while an export is in progress will not + * be reflected in the results. + * https://docs.microsoft.com/rest/api/playfab/server/playstream/exportplayersinsegment + */ + ExportPlayersInSegment(request: PlayFabServerModels.ExportPlayersInSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves an array of player segment definitions. Results from this can be used in subsequent API calls such as - * GetPlayersInSegment which requires a Segment ID. While segment names can change the ID for that segment will not change. + * ExportPlayersInSegment which requires a Segment ID. While segment names can change the ID for that segment will not + * change. * https://docs.microsoft.com/rest/api/playfab/server/playstream/getallsegments */ - GetAllSegments(request: PlayFabServerModels.GetAllSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetAllSegments(request: PlayFabServerModels.GetAllSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all of the characters that belong to a specific user. CharacterIds are not globally unique; characterId must be * evaluated with the parent PlayFabId to guarantee uniqueness. * https://docs.microsoft.com/rest/api/playfab/server/characters/getalluserscharacters */ - GetAllUsersCharacters(request: PlayFabServerModels.ListUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetAllUsersCharacters(request: PlayFabServerModels.ListUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the specified version of the title's catalog of virtual goods, including all defined properties + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the specified version of the title's catalog of virtual goods, including all defined properties * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/getcatalogitems */ - GetCatalogItems(request: PlayFabServerModels.GetCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCatalogItems(request: PlayFabServerModels.GetCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/server/character-data/getcharacterdata */ - GetCharacterData(request: PlayFabServerModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterData(request: PlayFabServerModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user's character which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/server/character-data/getcharacterinternaldata */ - GetCharacterInternalData(request: PlayFabServerModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterInternalData(request: PlayFabServerModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the specified character's current inventory of virtual goods + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the specified character's current inventory of virtual goods * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/getcharacterinventory */ - GetCharacterInventory(request: PlayFabServerModels.GetCharacterInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterInventory(request: PlayFabServerModels.GetCharacterInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked characters for the given statistic, starting from the indicated point in the leaderboard * https://docs.microsoft.com/rest/api/playfab/server/characters/getcharacterleaderboard */ - GetCharacterLeaderboard(request: PlayFabServerModels.GetCharacterLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterLeaderboard(request: PlayFabServerModels.GetCharacterLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user's character which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/server/character-data/getcharacterreadonlydata */ - GetCharacterReadOnlyData(request: PlayFabServerModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterReadOnlyData(request: PlayFabServerModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the details of all title-specific statistics for the specific character * https://docs.microsoft.com/rest/api/playfab/server/characters/getcharacterstatistics */ - GetCharacterStatistics(request: PlayFabServerModels.GetCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterStatistics(request: PlayFabServerModels.GetCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * This API retrieves a pre-signed URL for accessing a content file for the title. A subsequent HTTP GET to the returned * URL will attempt to download the content. A HEAD query to the returned URL will attempt to retrieve the metadata of the @@ -162,331 +184,451 @@ declare module PlayFabServerModule { * please be aware that the Content service is specifically PlayFab's CDN offering, for which standard CDN rates apply. * https://docs.microsoft.com/rest/api/playfab/server/content/getcontentdownloadurl */ - GetContentDownloadUrl(request: PlayFabServerModels.GetContentDownloadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetContentDownloadUrl(request: PlayFabServerModels.GetContentDownloadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked friends of the given player for the given statistic, starting from the indicated point in the * leaderboard * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getfriendleaderboard */ - GetFriendLeaderboard(request: PlayFabServerModels.GetFriendLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetFriendLeaderboard(request: PlayFabServerModels.GetFriendLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the current friends for the user with PlayFabId, constrained to users who have PlayFab accounts. Friends from * linked accounts (Facebook, Steam) are also included. You may optionally exclude some linked services' friends. * https://docs.microsoft.com/rest/api/playfab/server/friend-list-management/getfriendslist */ - GetFriendsList(request: PlayFabServerModels.GetFriendsListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetFriendsList(request: PlayFabServerModels.GetFriendsListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked users for the given statistic, starting from the indicated point in the leaderboard * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getleaderboard */ - GetLeaderboard(request: PlayFabServerModels.GetLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboard(request: PlayFabServerModels.GetLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked characters for the given statistic, centered on the requested user * https://docs.microsoft.com/rest/api/playfab/server/characters/getleaderboardaroundcharacter */ - GetLeaderboardAroundCharacter(request: PlayFabServerModels.GetLeaderboardAroundCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboardAroundCharacter(request: PlayFabServerModels.GetLeaderboardAroundCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked users for the given statistic, centered on the currently signed-in user * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getleaderboardarounduser */ - GetLeaderboardAroundUser(request: PlayFabServerModels.GetLeaderboardAroundUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboardAroundUser(request: PlayFabServerModels.GetLeaderboardAroundUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of all of the user's characters for the given statistic. * https://docs.microsoft.com/rest/api/playfab/server/characters/getleaderboardforusercharacters */ - GetLeaderboardForUserCharacters(request: PlayFabServerModels.GetLeaderboardForUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboardForUserCharacters(request: PlayFabServerModels.GetLeaderboardForUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Returns whatever info is requested in the response for the user. Note that PII (like email address, facebook id) may be * returned. All parameters default to false. * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getplayercombinedinfo */ - GetPlayerCombinedInfo(request: PlayFabServerModels.GetPlayerCombinedInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerCombinedInfo(request: PlayFabServerModels.GetPlayerCombinedInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves a title-specific custom property value for a player. + * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getplayercustomproperty + */ + GetPlayerCustomProperty(request: PlayFabServerModels.GetPlayerCustomPropertyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the player's profile * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayerprofile */ - GetPlayerProfile(request: PlayFabServerModels.GetPlayerProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerProfile(request: PlayFabServerModels.GetPlayerProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * List all segments that a player currently belongs to at this moment in time. * https://docs.microsoft.com/rest/api/playfab/server/playstream/getplayersegments */ - GetPlayerSegments(request: PlayFabServerModels.GetPlayersSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Allows for paging through all players in a given segment. This API creates a snapshot of all player profiles that match - * the segment definition at the time of its creation and lives through the Total Seconds to Live, refreshing its life span - * on each subsequent use of the Continuation Token. Profiles that change during the course of paging will not be reflected - * in the results. AB Test segments are currently not supported by this operation. NOTE: This API is limited to being - * called 30 times in one minute. You will be returned an error if you exceed this threshold. - * https://docs.microsoft.com/rest/api/playfab/server/playstream/getplayersinsegment - */ - GetPlayersInSegment(request: PlayFabServerModels.GetPlayersInSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerSegments(request: PlayFabServerModels.GetPlayersSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the current version and values for the indicated statistics, for the local player. * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getplayerstatistics */ - GetPlayerStatistics(request: PlayFabServerModels.GetPlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerStatistics(request: PlayFabServerModels.GetPlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the information on the available versions of the specified statistic. * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getplayerstatisticversions */ - GetPlayerStatisticVersions(request: PlayFabServerModels.GetPlayerStatisticVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerStatisticVersions(request: PlayFabServerModels.GetPlayerStatisticVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get all tags with a given Namespace (optional) from a player profile. * https://docs.microsoft.com/rest/api/playfab/server/playstream/getplayertags */ - GetPlayerTags(request: PlayFabServerModels.GetPlayerTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerTags(request: PlayFabServerModels.GetPlayerTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Battle.net account identifiers. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfrombattlenetaccountids + */ + GetPlayFabIDsFromBattleNetAccountIds(request: PlayFabServerModels.GetPlayFabIDsFromBattleNetAccountIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Facebook identifiers. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromfacebookids */ - GetPlayFabIDsFromFacebookIDs(request: PlayFabServerModels.GetPlayFabIDsFromFacebookIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromFacebookIDs(request: PlayFabServerModels.GetPlayFabIDsFromFacebookIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Facebook Instant Games identifiers. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromfacebookinstantgamesids */ - GetPlayFabIDsFromFacebookInstantGamesIds(request: PlayFabServerModels.GetPlayFabIDsFromFacebookInstantGamesIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromFacebookInstantGamesIds(request: PlayFabServerModels.GetPlayFabIDsFromFacebookInstantGamesIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of generic service identifiers. A generic identifier is the * service name plus the service-specific ID for the player, as specified by the title when the generic identifier was * added to the player account. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromgenericids */ - GetPlayFabIDsFromGenericIDs(request: PlayFabServerModels.GetPlayFabIDsFromGenericIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromGenericIDs(request: PlayFabServerModels.GetPlayFabIDsFromGenericIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Nintendo Service Account identifiers. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromnintendoserviceaccountids + */ + GetPlayFabIDsFromNintendoServiceAccountIds(request: PlayFabServerModels.GetPlayFabIDsFromNintendoServiceAccountIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Nintendo Switch Device identifiers. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromnintendoswitchdeviceids */ - GetPlayFabIDsFromNintendoSwitchDeviceIds(request: PlayFabServerModels.GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromNintendoSwitchDeviceIds(request: PlayFabServerModels.GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the unique PlayFab identifiers for the given set of PlayStation Network identifiers. + * Retrieves the unique PlayFab identifiers for the given set of OpenId subject identifiers. A OpenId subject identifier is + * the OpenId issuer plus the OpenId subject for the player, as specified by the title when the OpenId identifier was added + * to the player account. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromopenidsubjectidentifiers + */ + GetPlayFabIDsFromOpenIdSubjectIdentifiers(request: PlayFabServerModels.GetPlayFabIDsFromOpenIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of PlayStation :tm: Network identifiers. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfrompsnaccountids */ - GetPlayFabIDsFromPSNAccountIDs(request: PlayFabServerModels.GetPlayFabIDsFromPSNAccountIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromPSNAccountIDs(request: PlayFabServerModels.GetPlayFabIDsFromPSNAccountIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of PlayStation :tm: Network identifiers. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfrompsnonlineids + */ + GetPlayFabIDsFromPSNOnlineIDs(request: PlayFabServerModels.GetPlayFabIDsFromPSNOnlineIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the associated PlayFab account identifiers for the given set of server custom player identifiers. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromservercustomids + */ + GetPlayFabIDsFromServerCustomIDs(request: PlayFabServerModels.GetPlayFabIDsFromServerCustomIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Steam identifiers. The Steam identifiers are the profile * IDs for the user accounts, available as SteamId in the Steamworks Community API calls. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromsteamids */ - GetPlayFabIDsFromSteamIDs(request: PlayFabServerModels.GetPlayFabIDsFromSteamIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromSteamIDs(request: PlayFabServerModels.GetPlayFabIDsFromSteamIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Steam identifiers. The Steam identifiers are persona + * names. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromsteamnames + */ + GetPlayFabIDsFromSteamNames(request: PlayFabServerModels.GetPlayFabIDsFromSteamNamesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Twitch identifiers. The Twitch identifiers are the IDs for + * the user accounts, available as "_id" from the Twitch API methods (ex: + * https://github.com/justintv/Twitch-API/blob/master/v3_resources/users.md#get-usersuser). + * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromtwitchids + */ + GetPlayFabIDsFromTwitchIDs(request: PlayFabServerModels.GetPlayFabIDsFromTwitchIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of XboxLive identifiers. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromxboxliveids */ - GetPlayFabIDsFromXboxLiveIDs(request: PlayFabServerModels.GetPlayFabIDsFromXboxLiveIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromXboxLiveIDs(request: PlayFabServerModels.GetPlayFabIDsFromXboxLiveIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom publisher settings * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/getpublisherdata */ - GetPublisherData(request: PlayFabServerModels.GetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPublisherData(request: PlayFabServerModels.GetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the configuration information for the specified random results tables for the title, including all ItemId - * values and weights + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the configuration information for the specified random results tables for the title, including all + * ItemId values and weights * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/getrandomresulttables */ - GetRandomResultTables(request: PlayFabServerModels.GetRandomResultTablesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetRandomResultTables(request: PlayFabServerModels.GetRandomResultTablesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the result of an export started by ExportPlayersInSegment API. If the ExportPlayersInSegment is successful and + * complete, this API returns the IndexUrl from which the index file can be downloaded. The index file has a list of urls + * from which the files containing the player profile data can be downloaded. Otherwise, it returns the current 'State' of + * the export + * https://docs.microsoft.com/rest/api/playfab/server/playstream/getsegmentexport + */ + GetSegmentExport(request: PlayFabServerModels.GetPlayersInSegmentExportRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Returns the total number of players in a given segment. + * https://docs.microsoft.com/rest/api/playfab/server/playstream/getsegmentplayercount + */ + GetSegmentPlayerCount(request: PlayFabServerModels.GetSegmentPlayerCountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the associated PlayFab account identifiers for the given set of server custom identifiers. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getservercustomidsfromplayfabids */ - GetServerCustomIDsFromPlayFabIDs(request: PlayFabServerModels.GetServerCustomIDsFromPlayFabIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetServerCustomIDsFromPlayFabIDs(request: PlayFabServerModels.GetServerCustomIDsFromPlayFabIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves data stored in a shared group object, as well as the list of members in the group. The server can access all * public and private group data. Shared Groups are designed for sharing data between a very small number of players, * please see our guide: https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/server/shared-group-data/getsharedgroupdata */ - GetSharedGroupData(request: PlayFabServerModels.GetSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetSharedGroupData(request: PlayFabServerModels.GetSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the set of items defined for the specified store, including all prices defined, for the specified player + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the set of items defined for the specified store, including all prices defined, for the specified + * player * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/getstoreitems */ - GetStoreItems(request: PlayFabServerModels.GetStoreItemsServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetStoreItems(request: PlayFabServerModels.GetStoreItemsServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the current server time * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/gettime */ - GetTime(request: PlayFabServerModels.GetTimeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTime(request: PlayFabServerModels.GetTimeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom title settings * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/gettitledata */ - GetTitleData(request: PlayFabServerModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleData(request: PlayFabServerModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom internal title settings * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/gettitleinternaldata */ - GetTitleInternalData(request: PlayFabServerModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleInternalData(request: PlayFabServerModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title news feed, as configured in the developer portal * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/gettitlenews */ - GetTitleNews(request: PlayFabServerModels.GetTitleNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleNews(request: PlayFabServerModels.GetTitleNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the relevant details for a specified user * https://docs.microsoft.com/rest/api/playfab/server/account-management/getuseraccountinfo */ - GetUserAccountInfo(request: PlayFabServerModels.GetUserAccountInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserAccountInfo(request: PlayFabServerModels.GetUserAccountInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets all bans for a user. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getuserbans */ - GetUserBans(request: PlayFabServerModels.GetUserBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserBans(request: PlayFabServerModels.GetUserBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserdata */ - GetUserData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserinternaldata */ - GetUserInternalData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserInternalData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the specified user's current inventory of virtual goods + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the specified user's current inventory of virtual goods * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/getuserinventory */ - GetUserInventory(request: PlayFabServerModels.GetUserInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserInventory(request: PlayFabServerModels.GetUserInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserpublisherdata */ - GetUserPublisherData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserpublisherinternaldata */ - GetUserPublisherInternalData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherInternalData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserpublisherreadonlydata */ - GetUserPublisherReadOnlyData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherReadOnlyData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserreadonlydata */ - GetUserReadOnlyData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserReadOnlyData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Grants the specified character type to the user. CharacterIds are not globally unique; characterId must be evaluated * with the parent PlayFabId to guarantee uniqueness. * https://docs.microsoft.com/rest/api/playfab/server/characters/grantcharactertouser */ - GrantCharacterToUser(request: PlayFabServerModels.GrantCharacterToUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GrantCharacterToUser(request: PlayFabServerModels.GrantCharacterToUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds the specified items to the specified character's inventory + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Adds the specified items to the specified character's inventory * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/grantitemstocharacter */ - GrantItemsToCharacter(request: PlayFabServerModels.GrantItemsToCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GrantItemsToCharacter(request: PlayFabServerModels.GrantItemsToCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds the specified items to the specified user's inventory + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Adds the specified items to the specified user's inventory * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/grantitemstouser */ - GrantItemsToUser(request: PlayFabServerModels.GrantItemsToUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GrantItemsToUser(request: PlayFabServerModels.GrantItemsToUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds the specified items to the specified user inventories + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Adds the specified items to the specified user inventories * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/grantitemstousers */ - GrantItemsToUsers(request: PlayFabServerModels.GrantItemsToUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GrantItemsToUsers(request: PlayFabServerModels.GrantItemsToUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the Battle.net account associated with the token to the user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linkbattlenetaccount + */ + LinkBattleNetAccount(request: PlayFabServerModels.LinkBattleNetAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Links the PlayStation Network account associated with the provided access code to the user's PlayFab account + * Links the Nintendo account associated with the token to the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linknintendoserviceaccount + */ + LinkNintendoServiceAccount(request: PlayFabServerModels.LinkNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the Nintendo account associated with the Nintendo Service Account subject or id to the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linknintendoserviceaccountsubject + */ + LinkNintendoServiceAccountSubject(request: PlayFabServerModels.LinkNintendoServiceAccountSubjectRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the NintendoSwitchDeviceId to the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linknintendoswitchdeviceid + */ + LinkNintendoSwitchDeviceId(request: PlayFabServerModels.LinkNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the PlayStation :tm: Network account associated with the provided access code to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/server/account-management/linkpsnaccount */ - LinkPSNAccount(request: PlayFabServerModels.LinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkPSNAccount(request: PlayFabServerModels.LinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the PlayStation :tm: Network account associated with the provided user id to the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linkpsnid + */ + LinkPSNId(request: PlayFabServerModels.LinkPSNIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the custom server identifier, generated by the title, to the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/server/account-management/linkservercustomid */ - LinkServerCustomId(request: PlayFabServerModels.LinkServerCustomIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkServerCustomId(request: PlayFabServerModels.LinkServerCustomIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the Steam account associated with the provided Steam ID to the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linksteamid + */ + LinkSteamId(request: PlayFabServerModels.LinkSteamIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the Twitch account associated with the token to the user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linktwitchaccount + */ + LinkTwitchAccount(request: PlayFabServerModels.LinkTwitchAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Xbox Live account associated with the provided access code to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/server/account-management/linkxboxaccount */ - LinkXboxAccount(request: PlayFabServerModels.LinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkXboxAccount(request: PlayFabServerModels.LinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the Xbox Live account associated with the provided Xbox ID and Sandbox to the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linkxboxid + */ + LinkXboxId(request: PlayFabServerModels.LinkXboxIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves title-specific custom property values for a player. + * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/listplayercustomproperties + */ + ListPlayerCustomProperties(request: PlayFabServerModels.ListPlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Signs the user in using the Android device identifier, returning a session identifier that can subsequently be used for + * API calls which require an authenticated user + * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithandroiddeviceid + */ + LoginWithAndroidDeviceID(request: PlayFabServerModels.LoginWithAndroidDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Sign in the user with a Battle.net identity token + * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithbattlenet + */ + LoginWithBattleNet(request: PlayFabServerModels.LoginWithBattleNetRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Signs the user in using a custom unique identifier generated by the title, returning a session identifier that can + * subsequently be used for API calls which require an authenticated user + * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithcustomid + */ + LoginWithCustomID(request: PlayFabServerModels.LoginWithCustomIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Signs the user in using the iOS device identifier, returning a session identifier that can subsequently be used for API + * calls which require an authenticated user + * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithiosdeviceid + */ + LoginWithIOSDeviceID(request: PlayFabServerModels.LoginWithIOSDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Signs the user in using a PlayStation :tm: Network authentication code, returning a session identifier that can + * subsequently be used for API calls which require an authenticated user + * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithpsn + */ + LoginWithPSN(request: PlayFabServerModels.LoginWithPSNRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Securely login a game client from an external server backend using a custom identifier for that player. Server Custom ID * and Client Custom ID are mutually exclusive and cannot be used to retrieve the same player account. * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithservercustomid */ - LoginWithServerCustomId(request: PlayFabServerModels.LoginWithServerCustomIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithServerCustomId(request: PlayFabServerModels.LoginWithServerCustomIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using an Steam ID, returning a session identifier that can subsequently be used for API calls which * require an authenticated user * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithsteamid */ - LoginWithSteamId(request: PlayFabServerModels.LoginWithSteamIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithSteamId(request: PlayFabServerModels.LoginWithSteamIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Sign in the user with a Twitch access token + * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithtwitch + */ + LoginWithTwitch(request: PlayFabServerModels.LoginWithTwitchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Xbox Live Token from an external server backend, returning a session identifier that can * subsequently be used for API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithxbox */ - LoginWithXbox(request: PlayFabServerModels.LoginWithXboxRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithXbox(request: PlayFabServerModels.LoginWithXboxRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using an Xbox ID and Sandbox ID, returning a session identifier that can subsequently be used for API * calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithxboxid */ - LoginWithXboxId(request: PlayFabServerModels.LoginWithXboxIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithXboxId(request: PlayFabServerModels.LoginWithXboxIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Modifies the number of remaining uses of a player's inventory item + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Modifies the number of remaining uses of a player's inventory item * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/modifyitemuses */ - ModifyItemUses(request: PlayFabServerModels.ModifyItemUsesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ModifyItemUses(request: PlayFabServerModels.ModifyItemUsesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Moves an item from a character's inventory into another of the users's character's inventory. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Moves an item from a character's inventory into another of the users's character's inventory. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/moveitemtocharacterfromcharacter */ - MoveItemToCharacterFromCharacter(request: PlayFabServerModels.MoveItemToCharacterFromCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + MoveItemToCharacterFromCharacter(request: PlayFabServerModels.MoveItemToCharacterFromCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Moves an item from a user's inventory into their character's inventory. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Moves an item from a user's inventory into their character's inventory. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/moveitemtocharacterfromuser */ - MoveItemToCharacterFromUser(request: PlayFabServerModels.MoveItemToCharacterFromUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + MoveItemToCharacterFromUser(request: PlayFabServerModels.MoveItemToCharacterFromUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Moves an item from a character's inventory into the owning user's inventory. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Moves an item from a character's inventory into the owning user's inventory. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/moveitemtouserfromcharacter */ - MoveItemToUserFromCharacter(request: PlayFabServerModels.MoveItemToUserFromCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Informs the PlayFab match-making service that the user specified has left the Game Server Instance - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/notifymatchmakerplayerleft - */ - NotifyMatchmakerPlayerLeft(request: PlayFabServerModels.NotifyMatchmakerPlayerLeftRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + MoveItemToUserFromCharacter(request: PlayFabServerModels.MoveItemToUserFromCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds the virtual goods associated with the coupon to the user's inventory. Coupons can be generated via the + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Adds the virtual goods associated with the coupon to the user's inventory. Coupons can be generated via the * Economy->Catalogs tab in the PlayFab Game Manager. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/redeemcoupon */ - RedeemCoupon(request: PlayFabServerModels.RedeemCouponRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Validates a Game Server session ticket and returns details about the user - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/redeemmatchmakerticket - */ - RedeemMatchmakerTicket(request: PlayFabServerModels.RedeemMatchmakerTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Set the state of the indicated Game Server Instance. Also update the heartbeat for the instance. - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/refreshgameserverinstanceheartbeat - */ - RefreshGameServerInstanceHeartbeat(request: PlayFabServerModels.RefreshGameServerInstanceHeartbeatRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Inform the matchmaker that a new Game Server Instance is added. - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/registergame - */ - RegisterGame(request: PlayFabServerModels.RegisterGameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RedeemCoupon(request: PlayFabServerModels.RedeemCouponRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes the specified friend from the the user's friend list * https://docs.microsoft.com/rest/api/playfab/server/friend-list-management/removefriend */ - RemoveFriend(request: PlayFabServerModels.RemoveFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveFriend(request: PlayFabServerModels.RemoveFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes the specified generic service identifier from the player's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/server/account-management/removegenericid */ - RemoveGenericID(request: PlayFabServerModels.RemoveGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveGenericID(request: PlayFabServerModels.RemoveGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Remove a given tag from a player profile. The tag's namespace is automatically generated based on the source of the tag. * https://docs.microsoft.com/rest/api/playfab/server/playstream/removeplayertag */ - RemovePlayerTag(request: PlayFabServerModels.RemovePlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemovePlayerTag(request: PlayFabServerModels.RemovePlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes users from the set of those able to update the shared data and the set of users in the group. Only users in the * group can remove members. If as a result of the call, zero users remain with access, the group and its associated data @@ -494,179 +636,220 @@ declare module PlayFabServerModule { * guide: https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/server/shared-group-data/removesharedgroupmembers */ - RemoveSharedGroupMembers(request: PlayFabServerModels.RemoveSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveSharedGroupMembers(request: PlayFabServerModels.RemoveSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Submit a report about a player (due to bad bahavior, etc.) on behalf of another player, so that customer service * representatives for the title can take action concerning potentially toxic players. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/reportplayer */ - ReportPlayer(request: PlayFabServerModels.ReportPlayerServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ReportPlayer(request: PlayFabServerModels.ReportPlayerServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Revoke all active bans for a user. * https://docs.microsoft.com/rest/api/playfab/server/account-management/revokeallbansforuser */ - RevokeAllBansForUser(request: PlayFabServerModels.RevokeAllBansForUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeAllBansForUser(request: PlayFabServerModels.RevokeAllBansForUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Revoke all active bans specified with BanId. * https://docs.microsoft.com/rest/api/playfab/server/account-management/revokebans */ - RevokeBans(request: PlayFabServerModels.RevokeBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeBans(request: PlayFabServerModels.RevokeBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Revokes access to an item in a user's inventory + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Revokes access to an item in a user's inventory * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/revokeinventoryitem */ - RevokeInventoryItem(request: PlayFabServerModels.RevokeInventoryItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeInventoryItem(request: PlayFabServerModels.RevokeInventoryItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Revokes access for up to 25 items across multiple users and characters. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Revokes access for up to 25 items across multiple users and characters. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/revokeinventoryitems */ - RevokeInventoryItems(request: PlayFabServerModels.RevokeInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeInventoryItems(request: PlayFabServerModels.RevokeInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Saves push notification template for title * https://docs.microsoft.com/rest/api/playfab/server/account-management/savepushnotificationtemplate */ - SavePushNotificationTemplate(request: PlayFabServerModels.SavePushNotificationTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SavePushNotificationTemplate(request: PlayFabServerModels.SavePushNotificationTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Forces an email to be sent to the registered contact email address for the user's account based on an account recovery * email template * https://docs.microsoft.com/rest/api/playfab/server/account-management/sendcustomaccountrecoveryemail */ - SendCustomAccountRecoveryEmail(request: PlayFabServerModels.SendCustomAccountRecoveryEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SendCustomAccountRecoveryEmail(request: PlayFabServerModels.SendCustomAccountRecoveryEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sends an email based on an email template to a player's contact email * https://docs.microsoft.com/rest/api/playfab/server/account-management/sendemailfromtemplate */ - SendEmailFromTemplate(request: PlayFabServerModels.SendEmailFromTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SendEmailFromTemplate(request: PlayFabServerModels.SendEmailFromTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sends an iOS/Android Push Notification to a specific user, if that user's device has been configured for Push * Notifications in PlayFab. If a user has linked both Android and iOS devices, both will be notified. * https://docs.microsoft.com/rest/api/playfab/server/account-management/sendpushnotification */ - SendPushNotification(request: PlayFabServerModels.SendPushNotificationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SendPushNotification(request: PlayFabServerModels.SendPushNotificationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sends an iOS/Android Push Notification template to a specific user, if that user's device has been configured for Push * Notifications in PlayFab. If a user has linked both Android and iOS devices, both will be notified. * https://docs.microsoft.com/rest/api/playfab/server/account-management/sendpushnotificationfromtemplate */ - SendPushNotificationFromTemplate(request: PlayFabServerModels.SendPushNotificationFromTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SendPushNotificationFromTemplate(request: PlayFabServerModels.SendPushNotificationFromTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the tag list for a specified user in the friend list of another user * https://docs.microsoft.com/rest/api/playfab/server/friend-list-management/setfriendtags */ - SetFriendTags(request: PlayFabServerModels.SetFriendTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Sets the custom data of the indicated Game Server Instance - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/setgameserverinstancedata - */ - SetGameServerInstanceData(request: PlayFabServerModels.SetGameServerInstanceDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Set the state of the indicated Game Server Instance. - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/setgameserverinstancestate - */ - SetGameServerInstanceState(request: PlayFabServerModels.SetGameServerInstanceStateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Set custom tags for the specified Game Server Instance - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/setgameserverinstancetags - */ - SetGameServerInstanceTags(request: PlayFabServerModels.SetGameServerInstanceTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetFriendTags(request: PlayFabServerModels.SetFriendTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the player's secret if it is not already set. Player secrets are used to sign API requests. To reset a player's * secret use the Admin or Server API method SetPlayerSecret. * https://docs.microsoft.com/rest/api/playfab/server/authentication/setplayersecret */ - SetPlayerSecret(request: PlayFabServerModels.SetPlayerSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetPlayerSecret(request: PlayFabServerModels.SetPlayerSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the key-value store of custom publisher settings * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/setpublisherdata */ - SetPublisherData(request: PlayFabServerModels.SetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetPublisherData(request: PlayFabServerModels.SetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the key-value store of custom title settings * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/settitledata */ - SetTitleData(request: PlayFabServerModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetTitleData(request: PlayFabServerModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the key-value store of custom title settings * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/settitleinternaldata */ - SetTitleInternalData(request: PlayFabServerModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetTitleInternalData(request: PlayFabServerModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Decrements the character's balance of the specified virtual currency by the stated amount. It is possible to make a VC - * balance negative with this API. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Decrements the character's balance of the specified virtual currency by the stated amount. It is possible to + * make a VC balance negative with this API. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/subtractcharactervirtualcurrency */ - SubtractCharacterVirtualCurrency(request: PlayFabServerModels.SubtractCharacterVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SubtractCharacterVirtualCurrency(request: PlayFabServerModels.SubtractCharacterVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Decrements the user's balance of the specified virtual currency by the stated amount. It is possible to make a VC - * balance negative with this API. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Decrements the user's balance of the specified virtual currency by the stated amount. It is possible to make + * a VC balance negative with this API. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/subtractuservirtualcurrency */ - SubtractUserVirtualCurrency(request: PlayFabServerModels.SubtractUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SubtractUserVirtualCurrency(request: PlayFabServerModels.SubtractUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Apple account from the specified user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkapple + */ + UnlinkApple(request: PlayFabServerModels.UnlinkAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Battle.net account from the user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkbattlenetaccount + */ + UnlinkBattleNetAccount(request: PlayFabServerModels.UnlinkBattleNetAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Facebook account from the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkfacebookaccount + */ + UnlinkFacebookAccount(request: PlayFabServerModels.UnlinkFacebookAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Facebook Instant Games identifier from the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkfacebookinstantgamesid + */ + UnlinkFacebookInstantGamesId(request: PlayFabServerModels.UnlinkFacebookInstantGamesIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Game Center account from the specified user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkgamecenteraccount + */ + UnlinkGameCenterAccount(request: PlayFabServerModels.UnlinkGameCenterAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Nintendo account from the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinknintendoserviceaccount + */ + UnlinkNintendoServiceAccount(request: PlayFabServerModels.UnlinkNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related NintendoSwitchDeviceId from the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinknintendoswitchdeviceid + */ + UnlinkNintendoSwitchDeviceId(request: PlayFabServerModels.UnlinkNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Unlinks the related PSN account from the user's PlayFab account + * Unlinks the related PlayStation :tm: Network account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkpsnaccount */ - UnlinkPSNAccount(request: PlayFabServerModels.UnlinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkPSNAccount(request: PlayFabServerModels.UnlinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the custom server identifier from the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkservercustomid */ - UnlinkServerCustomId(request: PlayFabServerModels.UnlinkServerCustomIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkServerCustomId(request: PlayFabServerModels.UnlinkServerCustomIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the Steam account associated with the provided Steam ID to the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinksteamid + */ + UnlinkSteamId(request: PlayFabServerModels.UnlinkSteamIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Twitch account from the user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinktwitchaccount + */ + UnlinkTwitchAccount(request: PlayFabServerModels.UnlinkTwitchAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Xbox Live account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkxboxaccount */ - UnlinkXboxAccount(request: PlayFabServerModels.UnlinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkXboxAccount(request: PlayFabServerModels.UnlinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Opens a specific container (ContainerItemInstanceId), with a specific key (KeyItemInstanceId, when required), and - * returns the contents of the opened container. If the container (and key when relevant) are consumable (RemainingUses > - * 0), their RemainingUses will be decremented, consistent with the operation of ConsumeItem. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Opens a specific container (ContainerItemInstanceId), with a specific key (KeyItemInstanceId, when + * required), and returns the contents of the opened container. If the container (and key when relevant) are consumable + * (RemainingUses > 0), their RemainingUses will be decremented, consistent with the operation of ConsumeItem. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/unlockcontainerinstance */ - UnlockContainerInstance(request: PlayFabServerModels.UnlockContainerInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlockContainerInstance(request: PlayFabServerModels.UnlockContainerInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Searches Player or Character inventory for any ItemInstance matching the given CatalogItemId, if necessary unlocks it - * using any appropriate key, and returns the contents of the opened container. If the container (and key when relevant) - * are consumable (RemainingUses > 0), their RemainingUses will be decremented, consistent with the operation of + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Searches Player or Character inventory for any ItemInstance matching the given CatalogItemId, if necessary + * unlocks it using any appropriate key, and returns the contents of the opened container. If the container (and key when + * relevant) are consumable (RemainingUses > 0), their RemainingUses will be decremented, consistent with the operation of * ConsumeItem. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/unlockcontaineritem */ - UnlockContainerItem(request: PlayFabServerModels.UnlockContainerItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlockContainerItem(request: PlayFabServerModels.UnlockContainerItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Update the avatar URL of the specified player * https://docs.microsoft.com/rest/api/playfab/server/account-management/updateavatarurl */ - UpdateAvatarUrl(request: PlayFabServerModels.UpdateAvatarUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateAvatarUrl(request: PlayFabServerModels.UpdateAvatarUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates information of a list of existing bans specified with Ban Ids. * https://docs.microsoft.com/rest/api/playfab/server/account-management/updatebans */ - UpdateBans(request: PlayFabServerModels.UpdateBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateBans(request: PlayFabServerModels.UpdateBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user's character which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/server/character-data/updatecharacterdata */ - UpdateCharacterData(request: PlayFabServerModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCharacterData(request: PlayFabServerModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user's character which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/server/character-data/updatecharacterinternaldata */ - UpdateCharacterInternalData(request: PlayFabServerModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCharacterInternalData(request: PlayFabServerModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user's character which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/server/character-data/updatecharacterreadonlydata */ - UpdateCharacterReadOnlyData(request: PlayFabServerModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCharacterReadOnlyData(request: PlayFabServerModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the values of the specified title-specific statistics for the specific character * https://docs.microsoft.com/rest/api/playfab/server/characters/updatecharacterstatistics */ - UpdateCharacterStatistics(request: PlayFabServerModels.UpdateCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCharacterStatistics(request: PlayFabServerModels.UpdateCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Updates the title-specific custom property values for a player + * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateplayercustomproperties + */ + UpdatePlayerCustomProperties(request: PlayFabServerModels.UpdatePlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the values of the specified title-specific statistics for the user * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateplayerstatistics */ - UpdatePlayerStatistics(request: PlayFabServerModels.UpdatePlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdatePlayerStatistics(request: PlayFabServerModels.UpdatePlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds, updates, and removes data keys for a shared group object. If the permission is set to Public, all fields updated * or added in this call will be readable by users not in the group. By default, data permissions are set to Private. @@ -675,72 +858,63 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/server/shared-group-data/updatesharedgroupdata */ - UpdateSharedGroupData(request: PlayFabServerModels.UpdateSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateSharedGroupData(request: PlayFabServerModels.UpdateSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserdata */ - UpdateUserData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserinternaldata */ - UpdateUserInternalData(request: PlayFabServerModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserInternalData(request: PlayFabServerModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Updates the key-value pair data tagged to the specified item, which is read-only from the client. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Updates the key-value pair data tagged to the specified item, which is read-only from the client. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/updateuserinventoryitemcustomdata */ - UpdateUserInventoryItemCustomData(request: PlayFabServerModels.UpdateUserInventoryItemDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserInventoryItemCustomData(request: PlayFabServerModels.UpdateUserInventoryItemDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the publisher-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserpublisherdata */ - UpdateUserPublisherData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserPublisherData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the publisher-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserpublisherinternaldata */ - UpdateUserPublisherInternalData(request: PlayFabServerModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserPublisherInternalData(request: PlayFabServerModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the publisher-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserpublisherreadonlydata */ - UpdateUserPublisherReadOnlyData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserPublisherReadOnlyData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserreadonlydata */ - UpdateUserReadOnlyData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserReadOnlyData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Writes a character-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/server/analytics/writecharacterevent */ - WriteCharacterEvent(request: PlayFabServerModels.WriteServerCharacterEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WriteCharacterEvent(request: PlayFabServerModels.WriteServerCharacterEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Writes a player-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/server/analytics/writeplayerevent */ - WritePlayerEvent(request: PlayFabServerModels.WriteServerPlayerEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WritePlayerEvent(request: PlayFabServerModels.WriteServerPlayerEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Writes a title-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/server/analytics/writetitleevent */ - WriteTitleEvent(request: PlayFabServerModels.WriteTitleEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WriteTitleEvent(request: PlayFabServerModels.WriteTitleEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } declare module PlayFabServerModels { - export interface AdCampaignAttribution { - /** UTC time stamp of attribution */ - AttributedAt: string; - /** Attribution campaign identifier */ - CampaignId?: string; - /** Attribution network name */ - Platform?: string; - - } - export interface AdCampaignAttributionModel { /** UTC time stamp of attribution */ AttributedAt: string; @@ -790,6 +964,20 @@ declare module PlayFabServerModels { } + export interface AddOrUpdateContactEmailRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The new contact email to associate with the player. */ + EmailAddress: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface AddOrUpdateContactEmailResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface AddPlayerTagRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -891,12 +1079,12 @@ declare module PlayFabServerModels { Expires?: string; /** The IP address on which the ban was applied. May affect multiple players. */ IPAddress?: string; - /** The MAC address on which the ban was applied. May affect multiple players. */ - MACAddress?: string; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId?: string; /** The reason why this ban was applied. */ Reason?: string; + /** The family type of the user that is included in the ban. */ + UserFamilyType?: string; } @@ -905,12 +1093,12 @@ declare module PlayFabServerModels { DurationInHours?: number; /** IP address to be banned. May affect multiple players. */ IPAddress?: string; - /** MAC address to be banned. May affect multiple players. */ - MACAddress?: string; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; /** The reason for this ban. Maximum 140 characters. */ Reason?: string; + /** The family type of the user that should be included in the ban if applicable. May affect multiple players. */ + UserFamilyType?: string; } @@ -928,6 +1116,14 @@ declare module PlayFabServerModels { } + export interface BattleNetAccountPlayFabIdPair { + /** Unique Battle.net account identifier for a user. */ + BattleNetAccountId?: string; + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Battle.net account identifier. */ + PlayFabId?: string; + + } + export interface CatalogItem { /** * defines the bundle properties for the item - bundles are items which contain other items, including random drop tables @@ -1071,6 +1267,7 @@ declare module PlayFabServerModels { } type CloudScriptRevisionOption = "Live" + | "Latest" | "Specific"; @@ -1096,16 +1293,6 @@ declare module PlayFabServerModels { } - export interface ContactEmailInfo { - /** The email address */ - EmailAddress?: string; - /** The name of the email info data */ - Name?: string; - /** The verification status of the email */ - VerificationStatus?: string; - - } - export interface ContactEmailInfoModel { /** The email address */ EmailAddress?: string; @@ -1117,14 +1304,17 @@ declare module PlayFabServerModels { } type ContinentCode = "AF" + | "AN" | "AS" | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" + | "AX" | "AL" | "DZ" @@ -1372,7 +1562,8 @@ declare module PlayFabServerModels { | "EH" | "YE" | "ZM" - | "ZW"; + | "ZW" + | "Unknown"; export interface CreateSharedGroupRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique identifier for the shared group (a random identifier will be assigned, if one is not specified). */ @@ -1387,6 +1578,7 @@ declare module PlayFabServerModels { } type Currency = "AED" + | "AFN" | "ALL" | "AMD" @@ -1549,6 +1741,14 @@ declare module PlayFabServerModels { | "ZMW" | "ZWD"; + export interface CustomPropertyDetails { + /** The custom property's name. */ + Name?: string; + /** The custom property's value. */ + Value?: any; + + } + export interface DeleteCharacterFromUserRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId: string; @@ -1568,6 +1768,42 @@ declare module PlayFabServerModels { } + export interface DeletedPropertyDetails { + /** The name of the property which was requested to be deleted. */ + Name?: string; + /** Indicates whether or not the property was deleted. If false, no property with that name existed. */ + WasDeleted: boolean; + + } + + export interface DeletePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Optional field used for concurrency control. One can ensure that the delete operation will only be performed if the + * player's properties have not been updated by any other clients since the last version. + */ + ExpectedPropertiesVersion?: number; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** A list of property names denoting which properties should be deleted. */ + PropertyNames: string[]; + + } + + export interface DeletePlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** The list of properties requested to be deleted. */ + DeletedProperties?: DeletedPropertyDetails[]; + /** PlayFab unique identifier of the user whose properties were deleted. */ + PlayFabId?: string; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + + } + export interface DeletePlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; @@ -1594,19 +1830,8 @@ declare module PlayFabServerModels { } - export interface DeregisterGameRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Unique identifier for the Game Server Instance that is being deregistered. */ - LobbyId: string; - - } - - export interface DeregisterGameResponse extends PlayFabModule.IPlayFabResultCommon { - - } - type EmailVerificationStatus = "Unverified" + | "Pending" | "Confirmed"; @@ -1716,6 +1941,28 @@ declare module PlayFabServerModels { } + export interface ExportPlayersInSegmentRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique identifier of the requested segment. */ + SegmentId: string; + + } + + export interface ExportPlayersInSegmentResult extends PlayFabModule.IPlayFabResultCommon { + /** Unique identifier of the export for the requested Segment. */ + ExportId?: string; + /** Unique identifier of the requested Segment. */ + SegmentId?: string; + + } + + type ExternalFriendSources = "None" + + | "Steam" + | "Facebook" + | "Xbox" + | "Psn" + | "All"; + export interface FacebookInstantGamesPlayFabIdPair { /** Unique Facebook Instant Games identifier for a user. */ FacebookInstantGamesId?: string; @@ -1733,17 +1980,23 @@ declare module PlayFabServerModels { } export interface FriendInfo { - /** Available Facebook information (if the user and PlayFab friend are also connected in Facebook). */ + /** Available Facebook information (if the user and connected Facebook friend both have PlayFab Accounts in the same title). */ FacebookInfo?: UserFacebookInfo; /** PlayFab unique identifier for this friend. */ FriendPlayFabId?: string; - /** Available Game Center information (if the user and PlayFab friend are also connected in Game Center). */ + /** + * Available Game Center information (if the user and connected Game Center friend both have PlayFab Accounts in the same + * title). + */ GameCenterInfo?: UserGameCenterInfo; /** The profile of the user, if requested. */ Profile?: PlayerProfileModel; - /** Available PSN information, if the user and PlayFab friend are both connected to PSN. */ + /** + * Available PlayStation :tm: Network information, if the user connected PlayStation :tm Network friend both have PlayFab + * Accounts in the same title. + */ PSNInfo?: UserPsnInfo; - /** Available Steam information (if the user and PlayFab friend are also connected in Steam). */ + /** Available Steam information (if the user and connected Steam friend both have PlayFab Accounts in the same title). */ SteamInfo?: UserSteamInfo; /** Tags which have been associated with this friend. */ Tags?: string[]; @@ -1751,15 +2004,13 @@ declare module PlayFabServerModels { TitleDisplayName?: string; /** PlayFab unique username for this friend. */ Username?: string; - /** Available Xbox information, if the user and PlayFab friend are both connected to Xbox Live. */ + /** Available Xbox information, (if the user and connected Xbox Live friend both have PlayFab Accounts in the same title). */ XboxInfo?: UserXboxInfo; } - type GameInstanceState = "Open" - | "Closed"; - type GenericErrorCodes = "Success" + | "UnkownError" | "InvalidParams" | "AccountNotFound" @@ -1863,7 +2114,6 @@ declare module PlayFabServerModels { | "UnableToConnectToDatabase" | "InternalServerError" | "InvalidReportDate" - | "ReportNotAvailable" | "DatabaseThroughputExceeded" | "InvalidGameTicket" | "ExpiredGameTicket" @@ -2239,7 +2489,6 @@ declare module PlayFabServerModels { | "InsightsManagementGetOperationStatusInvalidParameter" | "DuplicatePurchaseTransactionId" | "EvaluationModePlayerCountExceeded" - | "GetPlayersInSegmentRateLimitExceeded" | "CloudScriptFunctionNameSizeExceeded" | "PaidInsightsFeaturesNotEnabled" | "CloudScriptAzureFunctionsQueueRequestError" @@ -2264,6 +2513,104 @@ declare module PlayFabServerModels { | "SteamUserNotFound" | "ElasticSearchOperationFailed" | "NotImplemented" + | "PublisherNotFound" + | "PublisherDeleted" + | "ApiDisabledForMigration" + | "ResourceNameUpdateNotAllowed" + | "ApiNotEnabledForTitle" + | "DuplicateTitleNameForPublisher" + | "AzureTitleCreationInProgress" + | "TitleConstraintsPublisherDeletion" + | "InvalidPlayerAccountPoolId" + | "PlayerAccountPoolNotFound" + | "PlayerAccountPoolDeleted" + | "TitleCleanupInProgress" + | "AzureResourceConcurrentOperationInProgress" + | "TitlePublisherUpdateNotAllowed" + | "AzureResourceManagerNotSupportedInStamp" + | "ApiNotIncludedInAzurePlayFabFeatureSet" + | "GoogleServiceAccountFailedAuth" + | "GoogleAPIServiceUnavailable" + | "GoogleAPIServiceUnknownError" + | "NoValidIdentityForAad" + | "PlayerIdentityLinkNotFound" + | "PhotonApplicationIdAlreadyInUse" + | "CloudScriptUnableToDeleteProductionRevision" + | "CustomIdNotFound" + | "AutomationInvalidInput" + | "AutomationInvalidRuleName" + | "AutomationRuleAlreadyExists" + | "AutomationRuleLimitExceeded" + | "InvalidGooglePlayGamesServerAuthCode" + | "PlayStreamConnectionFailed" + | "InvalidEventContents" + | "InsightsV1Deprecated" + | "AnalysisSubscriptionNotFound" + | "AnalysisSubscriptionFailed" + | "AnalysisSubscriptionFoundAlready" + | "AnalysisSubscriptionManagementInvalidInput" + | "InvalidGameCenterId" + | "InvalidNintendoSwitchAccountId" + | "EntityAPIKeysNotSupported" + | "IpAddressBanned" + | "EntityLineageBanned" + | "NamespaceMismatch" + | "InvalidServiceConfiguration" + | "InvalidNamespaceMismatch" + | "LeaderboardColumnLengthMismatch" + | "InvalidStatisticScore" + | "LeaderboardColumnsNotSpecified" + | "LeaderboardMaxSizeTooLarge" + | "InvalidAttributeStatisticsSpecified" + | "LeaderboardNotFound" + | "TokenSigningKeyNotFound" + | "LeaderboardNameConflict" + | "LinkedStatisticColumnMismatch" + | "NoLinkedStatisticToLeaderboard" + | "StatDefinitionAlreadyLinkedToLeaderboard" + | "LinkingStatsNotAllowedForEntityType" + | "LeaderboardCountLimitExceeded" + | "LeaderboardSizeLimitExceeded" + | "LeaderboardDefinitionModificationNotAllowedWhileLinked" + | "StatisticDefinitionModificationNotAllowedWhileLinked" + | "LeaderboardUpdateNotAllowedWhileLinked" + | "CloudScriptAzureFunctionsEventHubRequestError" + | "ExternalEntityNotAllowedForTier" + | "InvalidBaseTimeForInterval" + | "EntityTypeMismatchWithStatDefinition" + | "SpecifiedVersionLeaderboardNotFound" + | "LeaderboardColumnLengthMismatchWithStatDefinition" + | "DuplicateColumnNameFound" + | "LinkedStatisticColumnNotFound" + | "LinkedStatisticColumnRequired" + | "MultipleLinkedStatisticsNotAllowed" + | "DuplicateLinkedStatisticColumnNameFound" + | "AggregationTypeNotAllowedForMultiColumnStatistic" + | "MaxQueryableVersionsValueNotAllowedForTier" + | "StatisticDefinitionHasNullOrEmptyVersionConfiguration" + | "StatisticColumnLengthMismatch" + | "InvalidExternalEntityId" + | "UpdatingStatisticsUsingTransactionIdNotAvailableForFreeTier" + | "TransactionAlreadyApplied" + | "ReportDataNotRetrievedSuccessfully" + | "ResetIntervalCannotBeModified" + | "VersionIncrementRateExceeded" + | "InvalidSteamUsername" + | "InvalidVersionResetForLinkedLeaderboard" + | "BattleNetNotEnabledForTitle" + | "ReportNotProcessed" + | "DataNotAvailable" + | "InvalidReportName" + | "ResourceNotModified" + | "StudioCreationLimitExceeded" + | "StudioDeletionInitiated" + | "ProductDisabledForTitle" + | "PreconditionFailed" + | "CannotEnableAnonymousPlayerCreation" + | "ParentCustomerAccountNotFound" + | "AccountLinkedToABannedPlayer" + | "AzureSubscriptionNotEligibleForLinking" + | "EntityIsNotAMember" | "MatchmakingEntityInvalid" | "MatchmakingPlayerAttributesInvalid" | "MatchmakingQueueNotFound" @@ -2285,6 +2632,11 @@ declare module PlayFabServerModels { | "MatchmakingQueueLimitExceeded" | "MatchmakingRequestTypeMismatch" | "MatchmakingBadRequest" + | "PubSubFeatureNotEnabledForTitle" + | "PubSubTooManyRequests" + | "PubSubConnectionNotFoundForEntity" + | "PubSubConnectionHandleInvalid" + | "PubSubSubscriptionLimitExceeded" | "TitleConfigNotFound" | "TitleConfigUpdateConflict" | "TitleConfigSerializationError" @@ -2302,6 +2654,8 @@ declare module PlayFabServerModels { | "CatalogItemTypeInvalid" | "CatalogBadRequest" | "CatalogTooManyRequests" + | "InvalidCatalogItemConfiguration" + | "LegacyEconomyDisabled" | "ExportInvalidStatusUpdate" | "ExportInvalidPrefix" | "ExportBlobContainerDoesNotExist" @@ -2326,6 +2680,7 @@ declare module PlayFabServerModels { | "ExportCannotParseQuery" | "ExportControlCommandsNotAllowed" | "ExportQueryMissingTableReference" + | "ExportInsightsV1Deprecated" | "ExplorerBasicInvalidQueryName" | "ExplorerBasicInvalidQueryDescription" | "ExplorerBasicInvalidQueryConditions" @@ -2341,10 +2696,13 @@ declare module PlayFabServerModels { | "ExplorerBasicUpdateQueryError" | "ExplorerBasicSavedQueriesLimit" | "ExplorerBasicSavedQueryNotFound" + | "TenantShardMapperShardNotFound" | "TitleNotEnabledForParty" | "PartyVersionNotFound" | "MultiplayerServerBuildReferencedByMatchmakingQueue" | "MultiplayerServerBuildReferencedByBuildAlias" + | "MultiplayerServerBuildAliasReferencedByMatchmakingQueue" + | "PartySerializationError" | "ExperimentationExperimentStopped" | "ExperimentationExperimentRunning" | "ExperimentationExperimentNotFound" @@ -2368,6 +2726,10 @@ declare module PlayFabServerModels { | "ExperimentationExclusionGroupCannotDelete" | "ExperimentationExclusionGroupInvalidTrafficAllocation" | "ExperimentationExclusionGroupInvalidName" + | "ExperimentationLegacyExperimentInvalidOperation" + | "ExperimentationExperimentStopFailed" + | "ExperimentationExperimentDeleteFailed" + | "ExperimentationExperimentStartFailed" | "MaxActionDepthExceeded" | "TitleNotOnUpdatedPricingPlan" | "SegmentManagementTitleNotInFlight" @@ -2382,8 +2744,219 @@ declare module PlayFabServerModels { | "UpdateSegmentRateLimitExceeded" | "GetSegmentsRateLimitExceeded" | "AsyncExportNotInFlight" + | "AsyncExportNotFound" + | "AsyncExportRateLimitExceeded" + | "AnalyticsSegmentCountOverLimit" + | "GetSegmentPlayerCountNotInFlight" + | "GetSegmentPlayerCountRateLimitExceeded" | "SnapshotNotFound" - | "InventoryApiNotImplemented"; + | "InventoryApiNotImplemented" + | "InventoryCollectionDeletionDisallowed" + | "LobbyDoesNotExist" + | "LobbyRateLimitExceeded" + | "LobbyPlayerAlreadyJoined" + | "LobbyNotJoinable" + | "LobbyMemberCannotRejoin" + | "LobbyCurrentPlayersMoreThanMaxPlayers" + | "LobbyPlayerNotPresent" + | "LobbyBadRequest" + | "LobbyPlayerMaxLobbyLimitExceeded" + | "LobbyNewOwnerMustBeConnected" + | "LobbyCurrentOwnerStillConnected" + | "LobbyMemberIsNotOwner" + | "LobbyServerMismatch" + | "LobbyServerNotFound" + | "LobbyDifferentServerAlreadyJoined" + | "LobbyServerAlreadyJoined" + | "LobbyIsNotClientOwned" + | "LobbyDoesNotUseConnections" + | "EventSamplingInvalidRatio" + | "EventSamplingInvalidEventNamespace" + | "EventSamplingInvalidEventName" + | "EventSamplingRatioNotFound" + | "TelemetryKeyNotFound" + | "TelemetryKeyInvalidName" + | "TelemetryKeyAlreadyExists" + | "TelemetryKeyInvalid" + | "TelemetryKeyCountOverLimit" + | "TelemetryKeyDeactivated" + | "TelemetryKeyLongInsightsRetentionNotAllowed" + | "EventSinkConnectionInvalid" + | "EventSinkConnectionUnauthorized" + | "EventSinkRegionInvalid" + | "EventSinkLimitExceeded" + | "EventSinkSasTokenInvalid" + | "EventSinkNotFound" + | "EventSinkNameInvalid" + | "EventSinkSasTokenPermissionInvalid" + | "EventSinkSecretInvalid" + | "EventSinkTenantNotFound" + | "EventSinkAadNotFound" + | "EventSinkDatabaseNotFound" + | "EventSinkTitleUnauthorized" + | "EventSinkInsufficientRoleAssignment" + | "EventSinkContainerNotFound" + | "EventSinkTenantIdInvalid" + | "EventSinkResourceMisconfigured" + | "EventSinkAccessDenied" + | "EventSinkWriteConflict" + | "EventSinkResourceNotFound" + | "EventSinkResourceFeatureNotSupported" + | "EventSinkBucketNameInvalid" + | "EventSinkResourceUnavailable" + | "OperationCanceled" + | "InvalidDisplayNameRandomSuffixLength" + | "AllowNonUniquePlayerDisplayNamesDisableNotAllowed" + | "PartitionedEventInvalid" + | "PartitionedEventCountOverLimit" + | "ManageEventNamespaceInvalid" + | "ManageEventNameInvalid" + | "ManagedEventNotFound" + | "ManageEventsInvalidRatio" + | "ManagedEventInvalid" + | "PlayerCustomPropertiesPropertyNameTooLong" + | "PlayerCustomPropertiesPropertyNameIsInvalid" + | "PlayerCustomPropertiesStringPropertyValueTooLong" + | "PlayerCustomPropertiesValueIsInvalidType" + | "PlayerCustomPropertiesVersionMismatch" + | "PlayerCustomPropertiesPropertyCountTooHigh" + | "PlayerCustomPropertiesDuplicatePropertyName" + | "PlayerCustomPropertiesPropertyDoesNotExist" + | "AddonAlreadyExists" + | "AddonDoesntExist" + | "TrueSkillUnauthorized" + | "TrueSkillInvalidTitleId" + | "TrueSkillInvalidScenarioId" + | "TrueSkillInvalidModelId" + | "TrueSkillInvalidModelName" + | "TrueSkillInvalidPlayerIds" + | "TrueSkillInvalidEntityKey" + | "TrueSkillInvalidConditionKey" + | "TrueSkillInvalidConditionValue" + | "TrueSkillInvalidConditionAffinityWeight" + | "TrueSkillInvalidEventName" + | "TrueSkillMatchResultCreated" + | "TrueSkillMatchResultAlreadySubmitted" + | "TrueSkillBadPlayerIdInMatchResult" + | "TrueSkillInvalidBotIdInMatchResult" + | "TrueSkillDuplicatePlayerInMatchResult" + | "TrueSkillNoPlayerInMatchResultTeam" + | "TrueSkillPlayersInMatchResultExceedingLimit" + | "TrueSkillInvalidPreMatchPartyInMatchResult" + | "TrueSkillInvalidTimestampInMatchResult" + | "TrueSkillStartTimeMissingInMatchResult" + | "TrueSkillEndTimeMissingInMatchResult" + | "TrueSkillInvalidPlayerSecondsPlayedInMatchResult" + | "TrueSkillNoTeamInMatchResult" + | "TrueSkillNotEnoughTeamsInMatchResult" + | "TrueSkillInvalidRanksInMatchResult" + | "TrueSkillNoWinnerInMatchResult" + | "TrueSkillMissingRequiredCondition" + | "TrueSkillMissingRequiredEvent" + | "TrueSkillUnknownEventName" + | "TrueSkillInvalidEventCount" + | "TrueSkillUnknownConditionKey" + | "TrueSkillUnknownConditionValue" + | "TrueSkillScenarioConfigDoesNotExist" + | "TrueSkillUnknownModelId" + | "TrueSkillNoModelInScenario" + | "TrueSkillNotSupportedForTitle" + | "TrueSkillModelIsNotActive" + | "TrueSkillUnauthorizedToQueryOtherPlayerSkills" + | "TrueSkillInvalidMaxIterations" + | "TrueSkillEndTimeBeforeStartTime" + | "TrueSkillInvalidJobId" + | "TrueSkillInvalidMetadataId" + | "TrueSkillMissingBuildVerison" + | "TrueSkillJobAlreadyExists" + | "TrueSkillJobNotFound" + | "TrueSkillOperationCanceled" + | "TrueSkillActiveModelLimitExceeded" + | "TrueSkillTotalModelLimitExceeded" + | "TrueSkillUnknownInitialModelId" + | "TrueSkillUnauthorizedForJob" + | "TrueSkillInvalidScenarioName" + | "TrueSkillConditionStateIsRequired" + | "TrueSkillEventStateIsRequired" + | "TrueSkillDuplicateEvent" + | "TrueSkillDuplicateCondition" + | "TrueSkillInvalidAnomalyThreshold" + | "TrueSkillConditionKeyLimitExceeded" + | "TrueSkillConditionValuePerKeyLimitExceeded" + | "TrueSkillInvalidTimestamp" + | "TrueSkillEventLimitExceeded" + | "TrueSkillInvalidPlayers" + | "TrueSkillTrueSkillPlayerNull" + | "TrueSkillInvalidPlayerId" + | "TrueSkillInvalidSquadSize" + | "TrueSkillConditionSetNotInModel" + | "TrueSkillModelStateInvalidForOperation" + | "TrueSkillScenarioContainsActiveModel" + | "TrueSkillInvalidConditionRank" + | "TrueSkillTotalScenarioLimitExceeded" + | "TrueSkillInvalidConditionsList" + | "GameSaveManifestNotFound" + | "GameSaveManifestVersionAlreadyExists" + | "GameSaveConflictUpdatingManifest" + | "GameSaveManifestUpdatesNotAllowed" + | "GameSaveFileAlreadyExists" + | "GameSaveManifestVersionNotFinalized" + | "GameSaveUnknownFileInManifest" + | "GameSaveFileExceededReportedSize" + | "GameSaveFileNotUploaded" + | "GameSaveBadRequest" + | "GameSaveOperationNotAllowed" + | "GameSaveDataStorageQuotaExceeded" + | "GameSaveNewerManifestExists" + | "GameSaveBaseVersionNotAvailable" + | "GameSaveManifestVersionQuarantined" + | "GameSaveManifestUploadProgressUpdateNotAllowed" + | "GameSaveNotFinalizedManifestNotEligibleAsKnownGood" + | "GameSaveNoUpdatesRequested" + | "GameSaveTitleDoesNotExist" + | "GameSaveOperationNotAllowedForTitle" + | "GameSaveManifestFilesLimitExceeded" + | "GameSaveManifestDescriptionUpdateNotAllowed" + | "GameSaveTitleConfigNotFound" + | "GameSaveTitleAlreadyOnboarded" + | "GameSaveServiceNotEnabledForTitle" + | "GameSaveServiceOnboardingPending" + | "GameSaveManifestNotEligibleAsConflictingVersion" + | "GameSaveServiceUnavailable" + | "GameSaveConflict" + | "GameSaveManifestNotEligibleForRollback" + | "GameSaveTitleClientAnonymousAccountCreationNotDisabled" + | "GameSaveTitleConfigNoUpdatesRequested" + | "GameSavePlayerNotEligibleForTransfer" + | "StateShareForbidden" + | "StateShareTitleNotInFlight" + | "StateShareStateNotFound" + | "StateShareLinkNotFound" + | "StateShareStateRedemptionLimitExceeded" + | "StateShareStateRedemptionLimitNotUpdated" + | "StateShareCreatedStatesLimitExceeded" + | "StateShareIdMissingOrMalformed" + | "PlayerCreationDisabled" + | "AccountAlreadyExists" + | "TagInvalid" + | "TagTooLong" + | "StatisticColumnAggregationMismatch" + | "StatisticResetIntervalMismatch" + | "VersionConfigurationCannotBeSpecifiedForLinkedStat" + | "VersionConfigurationIsRequired" + | "InvalidEntityTypeForAggregation" + | "MultiLevelAggregationNotAllowed" + | "AggregationTypeNotAllowedForLinkedStat" + | "OperationDeniedDueToDefinitionPolicy" + | "StatisticUpdateNotAllowedWhileLinked" + | "UnsupportedEntityType" + | "EntityTypeSpecifiedRequiresAggregationSource" + | "PlayFabErrorEventNotSupportedForEntityType" + | "MetadataLengthExceeded" + | "MaxQueryableVersionsExceeded" + | "StatisticVersionIncrementNotAllowedWhileLinked" + | "StoreMetricsRequestInvalidInput" + | "StoreMetricsErrorRetrievingMetrics"; export interface GenericPlayFabIdPair { /** Unique generic service identifier for a user. */ @@ -2480,8 +3053,6 @@ declare module PlayFabServerModels { } export interface GetCharacterLeaderboardRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Optional character type on which to filter the leaderboard entries. */ - CharacterType?: string; /** Maximum number of entries to retrieve. */ MaxResultsCount: number; /** First entry in the leaderboard to be retrieved. */ @@ -2537,10 +3108,11 @@ declare module PlayFabServerModels { export interface GetFriendLeaderboardRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Indicates whether Facebook friends should be included in the response. Default is true. */ - IncludeFacebookFriends?: boolean; - /** Indicates whether Steam service friends should be included in the response. Default is true. */ - IncludeSteamFriends?: boolean; + /** + * Indicates which other platforms' friends should be included in the response. In HTTP, it is represented as a + * comma-separated list of platforms. + */ + ExternalPlatformFriends?: string; /** Maximum number of entries to retrieve. */ MaxResultsCount: number; /** The player whose friend leaderboard to get */ @@ -2565,10 +3137,11 @@ declare module PlayFabServerModels { export interface GetFriendsListRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Indicates whether Facebook friends should be included in the response. Default is true. */ - IncludeFacebookFriends?: boolean; - /** Indicates whether Steam service friends should be included in the response. Default is true. */ - IncludeSteamFriends?: boolean; + /** + * Indicates which other platforms' friends should be included in the response. In HTTP, it is represented as a + * comma-separated list of platforms. + */ + ExternalPlatformFriends?: string; /** PlayFab identifier of the player whose friend list to get. */ PlayFabId: string; /** @@ -2577,7 +3150,10 @@ declare module PlayFabServerModels { * the Game Manager "Client Profile Options" tab in the "Settings" section. */ ProfileConstraints?: PlayerProfileViewConstraints; - /** Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. */ + /** + * Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. When provided, all Xbox Live + * users the caller is following are included regardless of whether they follow the caller back. + */ XboxToken?: string; } @@ -2591,8 +3167,6 @@ declare module PlayFabServerModels { export interface GetLeaderboardAroundCharacterRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId: string; - /** Optional character type on which to filter the leaderboard entries. */ - CharacterType?: string; /** Maximum number of entries to retrieve. */ MaxResultsCount: number; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ @@ -2639,8 +3213,6 @@ declare module PlayFabServerModels { } export interface GetLeaderboardForUsersCharactersRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Maximum number of entries to retrieve. */ - MaxResultsCount: number; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; /** Unique identifier for the title-specific statistic for the leaderboard. */ @@ -2772,6 +3344,27 @@ declare module PlayFabServerModels { } + export interface GetPlayerCustomPropertyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** Specific property name to search for in the player's properties. */ + PropertyName: string; + + } + + export interface GetPlayerCustomPropertyResult extends PlayFabModule.IPlayFabResultCommon { + /** PlayFab unique identifier of the user whose properties are being returned. */ + PlayFabId?: string; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + /** Player specific property and its corresponding value. */ + Property?: CustomPropertyDetails; + + } + export interface GetPlayerProfileRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -2801,30 +3394,17 @@ declare module PlayFabServerModels { } - export interface GetPlayersInSegmentRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Continuation token if retrieving subsequent pages of results. */ - ContinuationToken?: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Maximum number of profiles to load. Default is 1,000. Maximum is 10,000. */ - MaxBatchSize?: number; - /** - * Number of seconds to keep the continuation token active. After token expiration it is not possible to continue paging - * results. Default is 300 (5 minutes). Maximum is 1,800 (30 minutes). - */ - SecondsToLive?: number; - /** Unique identifier for this segment. */ - SegmentId: string; + export interface GetPlayersInSegmentExportRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique identifier of the export for the requested Segment. */ + ExportId: string; } - export interface GetPlayersInSegmentResult extends PlayFabModule.IPlayFabResultCommon { - /** Continuation token to use to retrieve subsequent pages of results. If token returns null there are no more results. */ - ContinuationToken?: string; - /** Array of player profiles in this segment. */ - PlayerProfiles?: PlayerProfile[]; - /** Count of profiles matching this segment. */ - ProfilesInSegment: number; + export interface GetPlayersInSegmentExportResponse extends PlayFabModule.IPlayFabResultCommon { + /** Url from which the index file can be downloaded. */ + IndexUrl?: string; + /** Shows the current status of the export */ + State?: string; } @@ -2891,8 +3471,26 @@ declare module PlayFabServerModels { } + export interface GetPlayFabIDsFromBattleNetAccountIdsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Battle.net account identifiers for which the title needs to get PlayFab identifiers. The array cannot + * exceed 10 in length. + */ + BattleNetAccountIds: string[]; + + } + + export interface GetPlayFabIDsFromBattleNetAccountIdsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Battle.net account identifiers to PlayFab identifiers. */ + Data?: BattleNetAccountPlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromFacebookIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Facebook identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Facebook identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed 25 in + * length. + */ FacebookIDs: string[]; } @@ -2904,7 +3502,10 @@ declare module PlayFabServerModels { } export interface GetPlayFabIDsFromFacebookInstantGamesIdsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Facebook Instant Games identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Facebook Instant Games identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ FacebookInstantGamesIds: string[]; } @@ -2930,8 +3531,26 @@ declare module PlayFabServerModels { } + export interface GetPlayFabIDsFromNintendoServiceAccountIdsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Nintendo Switch Account identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ + NintendoAccountIds: string[]; + + } + + export interface GetPlayFabIDsFromNintendoServiceAccountIdsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Nintendo Switch Service Account identifiers to PlayFab identifiers. */ + Data?: NintendoServiceAccountPlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Nintendo Switch Device identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Nintendo Switch Device identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ NintendoSwitchDeviceIds: string[]; } @@ -2942,42 +3561,128 @@ declare module PlayFabServerModels { } + export interface GetPlayFabIDsFromOpenIdsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique OpenId Connect identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed + * 10 in length. + */ + OpenIdSubjectIdentifiers: OpenIdSubjectIdentifier[]; + + } + + export interface GetPlayFabIDsFromOpenIdsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of OpenId Connect identifiers to PlayFab identifiers. */ + Data?: OpenIdSubjectIdentifierPlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromPSNAccountIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Id of the PSN issuer environment. If null, defaults to production environment. */ + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ IssuerId?: number; - /** Array of unique PlayStation Network identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique PlayStation :tm: Network identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ PSNAccountIDs: string[]; } export interface GetPlayFabIDsFromPSNAccountIDsResult extends PlayFabModule.IPlayFabResultCommon { - /** Mapping of PlayStation Network identifiers to PlayFab identifiers. */ + /** Mapping of PlayStation :tm: Network identifiers to PlayFab identifiers. */ Data?: PSNAccountPlayFabIdPair[]; } - export interface GetPlayFabIDsFromSteamIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Steam identifiers (Steam profile IDs) for which the title needs to get PlayFab identifiers. */ - SteamStringIDs?: string[]; + export interface GetPlayFabIDsFromPSNOnlineIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ + IssuerId?: number; + /** + * Array of unique PlayStation :tm: Network identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ + PSNOnlineIDs: string[]; } - export interface GetPlayFabIDsFromSteamIDsResult extends PlayFabModule.IPlayFabResultCommon { - /** Mapping of Steam identifiers to PlayFab identifiers. */ - Data?: SteamPlayFabIdPair[]; + export interface GetPlayFabIDsFromPSNOnlineIDsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of PlayStation :tm: Network identifiers to PlayFab identifiers. */ + Data?: PSNOnlinePlayFabIdPair[]; } - export interface GetPlayFabIDsFromXboxLiveIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The ID of Xbox Live sandbox. */ - Sandbox?: string; - /** Array of unique Xbox Live account identifiers for which the title needs to get PlayFab identifiers. */ + export interface GetPlayFabIDsFromServerCustomIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique server custom player identifiers for which the title needs to get PlayFab identifiers. Cannot contain + * more than 25 identifiers. + */ + ServerCustomIds: string[]; + + } + + export interface GetPlayFabIDsFromServerCustomIDsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of server custom identifiers to PlayFab identifiers. */ + Data?: ServerCustomIDPlayFabIDPair[]; + + } + + export interface GetPlayFabIDsFromSteamIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Steam identifiers (Steam profile IDs) for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ + SteamStringIDs?: string[]; + + } + + export interface GetPlayFabIDsFromSteamIDsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Steam identifiers to PlayFab identifiers. */ + Data?: SteamPlayFabIdPair[]; + + } + + export interface GetPlayFabIDsFromSteamNamesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Steam identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed 25 in + * length. + */ + SteamNames: string[]; + + } + + export interface GetPlayFabIDsFromSteamNamesResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Steam identifiers to PlayFab identifiers. */ + Data?: SteamNamePlayFabIdPair[]; + + } + + export interface GetPlayFabIDsFromTwitchIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Twitch identifiers (Twitch's _id) for which the title needs to get PlayFab identifiers. The array cannot + * exceed 25 in length. + */ + TwitchIds: string[]; + + } + + export interface GetPlayFabIDsFromTwitchIDsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Twitch identifiers to PlayFab identifiers. */ + Data?: TwitchPlayFabIdPair[]; + + } + + export interface GetPlayFabIDsFromXboxLiveIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The ID of Xbox Live sandbox. */ + Sandbox?: string; + /** + * Array of unique Xbox Live account identifiers for which the title needs to get PlayFab identifiers. The array cannot + * exceed 25 in length. + */ XboxLiveAccountIDs: string[]; } export interface GetPlayFabIDsFromXboxLiveIDsResult extends PlayFabModule.IPlayFabResultCommon { - /** Mapping of PlayStation Network identifiers to PlayFab identifiers. */ + /** Mapping of Xbox Live identifiers to PlayFab identifiers. */ Data?: XboxLiveAccountPlayFabIdPair[]; } @@ -3011,6 +3716,18 @@ declare module PlayFabServerModels { } + export interface GetSegmentPlayerCountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique identifier for the requested segment. */ + SegmentId: string; + + } + + export interface GetSegmentPlayerCountResult extends PlayFabModule.IPlayFabResultCommon { + /** Count of profiles matching this segment. */ + ProfilesInSegment: number; + + } + export interface GetSegmentResult { /** Identifier of the segments AB Test, if it is attached to one. */ ABTestParent?: string; @@ -3379,6 +4096,18 @@ declare module PlayFabServerModels { } + export interface LinkBattleNetAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to a specific Battle.net account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** The JSON Web Token (JWT) returned by Battle.net after login */ + IdentityToken: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + export interface LinkedPlatformAccountModel { /** Linked account email of the user on the platform, if available */ Email?: string; @@ -3391,18 +4120,61 @@ declare module PlayFabServerModels { } + export interface LinkNintendoServiceAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to a specific Nintendo Switch account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** + * The JSON Web token (JWT) returned by Nintendo after login. Used to validate the request and find the user ID (Nintendo + * Switch subject) to link with. + */ + IdentityToken: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface LinkNintendoServiceAccountSubjectRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to a specific Nintendo Service Account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** The Nintendo Service Account subject or id to link to the PlayFab user. */ + Subject: string; + + } + + export interface LinkNintendoSwitchDeviceIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to the Nintendo Switch Device ID, unlink the other user and re-link. */ + ForceLink?: boolean; + /** Nintendo Switch unique identifier for the user's device. */ + NintendoSwitchDeviceId: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface LinkNintendoSwitchDeviceIdResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface LinkPSNAccountRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Authentication code provided by the PlayStation Network. */ + /** Authentication code provided by the PlayStation :tm: Network. */ AuthCode: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; - /** Id of the PSN issuer environment. If null, defaults to production environment. */ + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ IssuerId?: number; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; - /** Redirect URI supplied to PSN when requesting an auth code */ + /** Redirect URI supplied to PlayStation :tm: Network when requesting an auth code */ RedirectUri: string; } @@ -3411,6 +4183,24 @@ declare module PlayFabServerModels { } + export interface LinkPSNIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to the account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ + IssuerId?: number; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** Id of the PlayStation :tm: Network user. Also known as the PSN Account Id. */ + PSNUserId: string; + + } + + export interface LinkPSNIdResponse extends PlayFabModule.IPlayFabResultCommon { + + } + export interface LinkServerCustomIdRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -3427,12 +4217,40 @@ declare module PlayFabServerModels { } + export interface LinkSteamIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to the account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** PlayFab unique identifier of the user to link. */ + PlayFabId: string; + /** Unique Steam identifier for a user. */ + SteamId: string; + + } + + export interface LinkSteamIdResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface LinkTwitchAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Twitch access token for authentication. */ + AccessToken: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to the account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** PlayFab unique identifier of the user to link. */ + PlayFabId: string; + + } + export interface LinkXboxAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; - /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Xbox Live identifier. */ + /** PlayFab unique identifier of the user to link. */ PlayFabId: string; /** Token provided by the Xbox Live SDK/XDK method GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). */ XboxToken: string; @@ -3443,6 +4261,39 @@ declare module PlayFabServerModels { } + export interface LinkXboxIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to the account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** PlayFab unique identifier of the user to link. */ + PlayFabId: string; + /** The id of Xbox Live sandbox. */ + Sandbox: string; + /** Unique Xbox identifier for a user. */ + XboxId: string; + + } + + export interface ListPlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface ListPlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** PlayFab unique identifier of the user whose properties are being returned. */ + PlayFabId?: string; + /** Player specific properties and their corresponding values for this title. */ + Properties?: CustomPropertyDetails[]; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + + } + export interface ListUsersCharactersRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; @@ -3478,6 +4329,7 @@ declare module PlayFabServerModels { } type LoginIdentityProvider = "Unknown" + | "PlayFab" | "Custom" | "GameCenter" @@ -3497,7 +4349,83 @@ declare module PlayFabServerModels { | "FacebookInstantGames" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; + + export interface LoginWithAndroidDeviceIDRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Specific model of the user's device. */ + AndroidDevice?: string; + /** Android device identifier for the user's device. */ + AndroidDeviceId: string; + /** Automatically create a PlayFab account if one is not currently linked to this ID. */ + CreateAccount?: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Flags for which pieces of info to return for the user. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + /** Specific Operating System version for the user's device. */ + OS?: string; + + } + + export interface LoginWithBattleNetRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Automatically create a PlayFab account if one is not currently linked to this ID. */ + CreateAccount?: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The JSON Web Token (JWT) returned by Battle.net after login */ + IdentityToken: string; + /** Flags for which pieces of info to return for the user. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + + } + + export interface LoginWithCustomIDRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Automatically create a PlayFab account if one is not currently linked to this ID. */ + CreateAccount?: boolean; + /** Custom unique identifier for the user, generated by the title. */ + CustomId: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Flags for which pieces of info to return for the user. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + + } + + export interface LoginWithIOSDeviceIDRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Automatically create a PlayFab account if one is not currently linked to this ID. */ + CreateAccount?: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Vendor-specific iOS identifier for the user's device. */ + DeviceId: string; + /** Specific model of the user's device. */ + DeviceModel?: string; + /** Flags for which pieces of info to return for the user. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + /** Specific Operating System version for the user's device. */ + OS?: string; + + } + + export interface LoginWithPSNRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Auth code provided by the PlayStation :tm: Network OAuth provider. */ + AuthCode: string; + /** Automatically create a PlayFab account if one is not currently linked to this ID. */ + CreateAccount?: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Flags for which pieces of info to return for the user. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ + IssuerId?: number; + /** Redirect URI supplied to PlayStation :tm: Network when requesting an auth code */ + RedirectUri: string; + + } export interface LoginWithServerCustomIdRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ @@ -3506,10 +4434,10 @@ declare module PlayFabServerModels { CustomTags?: { [key: string]: string | null }; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** The backend server identifier for this player. */ - ServerCustomId?: string; + ServerCustomId: string; } @@ -3520,11 +4448,27 @@ declare module PlayFabServerModels { CustomTags?: { [key: string]: string | null }; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Unique Steam identifier for a user */ + /** Unique Steam identifier for a user. */ SteamId: string; } + export interface LoginWithTwitchRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Twitch access token for authentication. */ + AccessToken: string; + /** If true, create a new PlayFab account if one does not exist. */ + CreateAccount?: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Parameters for requesting additional player info. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + /** Player secret for additional authentication. */ + PlayerSecret?: string; + /** PlayFab unique identifier of the user. */ + PlayFabId: string; + + } + export interface LoginWithXboxIdRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; @@ -3534,7 +4478,7 @@ declare module PlayFabServerModels { InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** The id of Xbox Live sandbox. */ Sandbox: string; - /** Unique Xbox identifier for a user */ + /** Unique Xbox identifier for a user. */ XboxId: string; } @@ -3664,6 +4608,17 @@ declare module PlayFabServerModels { } + export interface NintendoServiceAccountPlayFabIdPair { + /** Unique Nintendo Switch Service Account identifier for a user. */ + NintendoServiceAccountId?: string; + /** + * Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Nintendo Switch Service Account + * identifier. + */ + PlayFabId?: string; + + } + export interface NintendoSwitchPlayFabIdPair { /** Unique Nintendo Switch Device identifier for a user. */ NintendoSwitchDeviceId?: string; @@ -3672,27 +4627,22 @@ declare module PlayFabServerModels { } - export interface NotifyMatchmakerPlayerLeftRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Unique identifier of the Game Instance the user is leaving. */ - LobbyId: string; - /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ - PlayFabId: string; + export interface OpenIdSubjectIdentifier { + /** The issuer URL for the OpenId Connect provider, or the override URL if an override exists. */ + Issuer: string; + /** The unique subject identifier within the context of the issuer. */ + Subject: string; } - export interface NotifyMatchmakerPlayerLeftResult extends PlayFabModule.IPlayFabResultCommon { - /** State of user leaving the Game Server Instance. */ - PlayerState?: string; + export interface OpenIdSubjectIdentifierPlayFabIdPair { + /** Unique OpenId Connect identifier for a user. */ + OpenIdSubjectIdentifier?: OpenIdSubjectIdentifier; + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the OpenId Connect identifier. */ + PlayFabId?: string; } - type PlayerConnectionState = "Unassigned" - | "Connecting" - | "Participating" - | "Participated"; - export interface PlayerLeaderboardEntry { /** Title-specific display name of the user for this leaderboard entry. */ DisplayName?: string; @@ -3707,78 +4657,6 @@ declare module PlayFabServerModels { } - export interface PlayerLinkedAccount { - /** Linked account's email */ - Email?: string; - /** Authentication platform */ - Platform?: string; - /** Platform user identifier */ - PlatformUserId?: string; - /** Linked account's username */ - Username?: string; - - } - - export interface PlayerLocation { - /** City of the player's geographic location. */ - City?: string; - /** The two-character continent code for this location */ - ContinentCode: string; - /** The two-character ISO 3166-1 country code for the country associated with the location */ - CountryCode: string; - /** Latitude coordinate of the player's geographic location. */ - Latitude?: number; - /** Longitude coordinate of the player's geographic location. */ - Longitude?: number; - - } - - export interface PlayerProfile { - /** Array of ad campaigns player has been attributed to */ - AdCampaignAttributions?: AdCampaignAttribution[]; - /** Image URL of the player's avatar. */ - AvatarUrl?: string; - /** Banned until UTC Date. If permanent ban this is set for 20 years after the original ban date. */ - BannedUntil?: string; - /** Array of contact email addresses associated with the player */ - ContactEmailAddresses?: ContactEmailInfo[]; - /** Player record created */ - Created?: string; - /** Player Display Name */ - DisplayName?: string; - /** Last login */ - LastLogin?: string; - /** Array of third party accounts linked to this player */ - LinkedAccounts?: PlayerLinkedAccount[]; - /** Dictionary of player's locations by type. */ - Locations?: { [key: string]: PlayerLocation }; - /** Player account origination */ - Origination?: string; - /** List of player variants for experimentation */ - PlayerExperimentVariants?: string[]; - /** PlayFab Player ID */ - PlayerId?: string; - /** Array of player statistics */ - PlayerStatistics?: PlayerStatistic[]; - /** Publisher this player belongs to */ - PublisherId?: string; - /** Array of configured push notification end points */ - PushNotificationRegistrations?: PushNotificationRegistration[]; - /** Dictionary of player's statistics using only the latest version's value */ - Statistics?: { [key: string]: number }; - /** List of player's tags for segmentation. */ - Tags?: string[]; - /** Title ID this profile applies to */ - TitleId?: string; - /** A sum of player's total purchases in USD across all currencies. */ - TotalValueToDateInUSD?: number; - /** Dictionary of player's total purchases by currency. */ - ValuesToDate?: { [key: string]: number }; - /** Dictionary of player's virtual currency balances */ - VirtualCurrencyBalances?: { [key: string]: number }; - - } - export interface PlayerProfileModel { /** List of advertising campaigns the player has been attributed to */ AdCampaignAttributions?: AdCampaignAttributionModel[]; @@ -3792,7 +4670,11 @@ declare module PlayFabServerModels { Created?: string; /** Player display name */ DisplayName?: string; - /** List of experiment variants for the player. */ + /** + * List of experiment variants for the player. Note that these variants are not guaranteed to be up-to-date when returned + * during login because the player profile is updated only after login. Instead, use the LoginResult.TreatmentAssignment + * property during login to get the correct variants and variables. + */ ExperimentVariants?: string[]; /** UTC time when the player most recently logged in to the title */ LastLogin?: string; @@ -3864,18 +4746,6 @@ declare module PlayFabServerModels { } - export interface PlayerStatistic { - /** Statistic ID */ - Id?: string; - /** Statistic name */ - Name?: string; - /** Current statistic value */ - StatisticValue: number; - /** Statistic version (0 if not a versioned statistic) */ - StatisticVersion: number; - - } - export interface PlayerStatisticVersion { /** time when the statistic version became active */ ActivationTime: string; @@ -3893,13 +4763,27 @@ declare module PlayFabServerModels { } export interface PSNAccountPlayFabIdPair { - /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the PlayStation Network identifier. */ + /** + * Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the PlayStation :tm: Network + * identifier. + */ PlayFabId?: string; - /** Unique PlayStation Network identifier for a user. */ + /** Unique PlayStation :tm: Network identifier for a user. */ PSNAccountId?: string; } + export interface PSNOnlinePlayFabIdPair { + /** + * Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the PlayStation :tm: Network + * identifier. + */ + PlayFabId?: string; + /** Unique PlayStation :tm: Network identifier for a user. */ + PSNOnlineId?: string; + + } + export interface PushNotificationPackage { /** Numerical badge to display on App icon (iOS only) */ Badge: number; @@ -3917,15 +4801,8 @@ declare module PlayFabServerModels { } type PushNotificationPlatform = "ApplePushNotificationService" - | "GoogleCloudMessaging"; - - export interface PushNotificationRegistration { - /** Notification configured endpoint */ - NotificationEndpointARN?: string; - /** Push notification platform */ - Platform?: string; - } + | "GoogleCloudMessaging"; export interface PushNotificationRegistrationModel { /** Notification configured endpoint */ @@ -3965,83 +4842,6 @@ declare module PlayFabServerModels { } - export interface RedeemMatchmakerTicketRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Unique identifier of the Game Server Instance that is asking for validation of the authorization ticket. */ - LobbyId: string; - /** Server authorization ticket passed back from a call to Matchmake or StartGame. */ - Ticket: string; - - } - - export interface RedeemMatchmakerTicketResult extends PlayFabModule.IPlayFabResultCommon { - /** Error value if the ticket was not validated. */ - Error?: string; - /** Boolean indicating whether the ticket was validated by the PlayFab service. */ - TicketIsValid: boolean; - /** User account information for the user validated. */ - UserInfo?: UserAccountInfo; - - } - - export interface RefreshGameServerInstanceHeartbeatRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Unique identifier of the Game Server Instance for which the heartbeat is updated. */ - LobbyId: string; - - } - - export interface RefreshGameServerInstanceHeartbeatResult extends PlayFabModule.IPlayFabResultCommon { - - } - - type Region = "USCentral" - | "USEast" - | "EUWest" - | "Singapore" - | "Japan" - | "Brazil" - | "Australia"; - - export interface RegisterGameRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Unique identifier of the build running on the Game Server Instance. */ - Build: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** - * Game Mode the Game Server instance is running. Note that this must be defined in the Game Modes tab in the PlayFab Game - * Manager, along with the Build ID (the same Game Mode can be defined for multiple Build IDs). - */ - GameMode: string; - /** Previous lobby id if re-registering an existing game. */ - LobbyId?: string; - /** - * Region in which the Game Server Instance is running. For matchmaking using non-AWS region names, set this to any AWS - * region and use Tags (below) to specify your custom region. - */ - Region: string; - /** IPV4 address of the game server instance. */ - ServerIPV4Address?: string; - /** IPV6 address (if any) of the game server instance. */ - ServerIPV6Address?: string; - /** Port number for communication with the Game Server Instance. */ - ServerPort: string; - /** Public DNS name (if any) of the server */ - ServerPublicDNSName?: string; - /** Tags for the Game Server Instance */ - Tags?: { [key: string]: string | null }; - - } - - export interface RegisterGameResponse extends PlayFabModule.IPlayFabResultCommon { - /** - * Unique identifier generated for the Game Server Instance that is registered. If LobbyId is specified in request and the - * game still exists in PlayFab, the LobbyId in request is returned. Otherwise a new lobby id will be returned. - */ - LobbyId?: string; - - } - export interface RemoveFriendRequest extends PlayFabModule.IPlayFabRequestCommon { /** PlayFab identifier of the friend account which is to be removed. */ FriendPlayFabId: string; @@ -4113,6 +4913,7 @@ declare module PlayFabServerModels { } type ResultTableNodeType = "ItemId" + | "TableId"; export interface RevokeAllBansForUserRequest extends PlayFabModule.IPlayFabRequestCommon { @@ -4302,7 +5103,7 @@ declare module PlayFabServerModels { InfoResultPayload?: GetPlayerCombinedInfoResultPayload; /** The time of this user's previous login. If there was no previous login, then it's DateTime.MinValue */ LastLoginTime?: string; - /** True if the account was newly created on this login. */ + /** True if the master_player_account was newly created on this login. */ NewlyCreated: boolean; /** Player's unique PlayFabId. */ PlayFabId?: string; @@ -4325,47 +5126,8 @@ declare module PlayFabServerModels { } - export interface SetGameServerInstanceDataRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Custom data to set for the specified game server instance. */ - GameServerData: string; - /** Unique identifier of the Game Instance to be updated, in decimal format. */ - LobbyId: string; - - } - - export interface SetGameServerInstanceDataResult extends PlayFabModule.IPlayFabResultCommon { - - } - - export interface SetGameServerInstanceStateRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Unique identifier of the Game Instance to be updated, in decimal format. */ - LobbyId: string; - /** State to set for the specified game server instance. */ - State: string; - - } - - export interface SetGameServerInstanceStateResult extends PlayFabModule.IPlayFabResultCommon { - - } - - export interface SetGameServerInstanceTagsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Unique identifier of the Game Server Instance to be updated. */ - LobbyId: string; - /** - * Tags to set for the specified Game Server Instance. Note that this is the complete list of tags to be associated with - * the Game Server Instance. - */ - Tags: { [key: string]: string | null }; - - } - - export interface SetGameServerInstanceTagsResult extends PlayFabModule.IPlayFabResultCommon { - - } - export interface SetPlayerSecretRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; @@ -4419,6 +5181,7 @@ declare module PlayFabServerModels { } type SourceType = "Admin" + | "BackEnd" | "GameClient" | "GameServer" @@ -4467,6 +5230,14 @@ declare module PlayFabServerModels { } + export interface SteamNamePlayFabIdPair { + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Steam identifier. */ + PlayFabId?: string; + /** Unique Steam identifier for a user, also known as Steam persona name. */ + SteamName?: string; + + } + export interface SteamPlayFabIdPair { /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Steam identifier. */ PlayFabId?: string; @@ -4521,6 +5292,7 @@ declare module PlayFabServerModels { } type SubscriptionProviderStatus = "NoError" + | "Cancelled" | "UnknownError" | "BillingError" @@ -4562,6 +5334,7 @@ declare module PlayFabServerModels { } type TitleActivationStatus = "None" + | "ActivatedTitleKey" | "PendingSteam" | "ActivatedSteam" @@ -4587,6 +5360,94 @@ declare module PlayFabServerModels { } + export interface TwitchPlayFabIdPair { + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Twitch identifier. */ + PlayFabId?: string; + /** Unique Twitch identifier for a user. */ + TwitchId?: string; + + } + + export interface UnlinkAppleRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface UnlinkAppleResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface UnlinkBattleNetAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface UnlinkFacebookAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** PlayFab unique identifier of the user to unlink. */ + PlayFabId: string; + + } + + export interface UnlinkFacebookAccountResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface UnlinkFacebookInstantGamesIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Facebook Instant Games identifier for the user. If not specified, the most recently linked identifier will be used. */ + FacebookInstantGamesId?: string; + /** PlayFab unique identifier of the user to unlink. */ + PlayFabId: string; + + } + + export interface UnlinkFacebookInstantGamesIdResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface UnlinkGameCenterAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface UnlinkGameCenterAccountResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface UnlinkNintendoServiceAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface UnlinkNintendoSwitchDeviceIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Nintendo Switch Device identifier for the user. If not specified, the most recently signed in device ID will be used. */ + NintendoSwitchDeviceId?: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface UnlinkNintendoSwitchDeviceIdResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface UnlinkPSNAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -4613,10 +5474,35 @@ declare module PlayFabServerModels { } + export interface UnlinkSteamIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Steam account. */ + PlayFabId: string; + + } + + export interface UnlinkSteamIdResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface UnlinkTwitchAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Valid token issued by Twitch. Used to specify which twitch account to unlink from the profile. By default it uses the + * one that is present on the profile. + */ + AccessToken?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** PlayFab unique identifier of the user to unlink. */ + PlayFabId: string; + + } + export interface UnlinkXboxAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Xbox Live identifier. */ + /** PlayFab unique identifier of the user to unlink. */ PlayFabId: string; } @@ -4693,12 +5579,12 @@ declare module PlayFabServerModels { Expires?: string; /** The updated IP address for the ban. Null for no change. */ IPAddress?: string; - /** The updated MAC address for the ban. Null for no change. */ - MACAddress?: string; /** Whether to make this ban permanent. Set to true to make this ban permanent. This will not modify Active state. */ Permanent?: boolean; /** The updated reason for the ban to be updated. Maximum 140 characters. Null for no change. */ Reason?: string; + /** The updated family type of the user that should be included in the ban. Null for no change. */ + UserFamilyType?: string; } @@ -4761,6 +5647,32 @@ declare module PlayFabServerModels { } + export interface UpdatePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Optional field used for concurrency control. One can ensure that the update operation will only be performed if the + * player's properties have not been updated by any other clients since last the version. + */ + ExpectedPropertiesVersion?: number; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** Collection of properties to be set for a player. */ + Properties: UpdateProperty[]; + + } + + export interface UpdatePlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** PlayFab unique identifier of the user whose properties were updated. */ + PlayFabId?: string; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + + } + export interface UpdatePlayerStatisticsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -4780,6 +5692,14 @@ declare module PlayFabServerModels { } + export interface UpdateProperty { + /** Name of the custom property. Can contain Unicode letters and digits. They are limited in size. */ + Name: string; + /** Value of the custom property. Limited to booleans, numbers, and strings. */ + Value: any; + + } + export interface UpdateSharedGroupDataRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -4878,6 +5798,8 @@ declare module PlayFabServerModels { AndroidDeviceInfo?: UserAndroidDeviceInfo; /** Sign in with Apple account information, if an Apple account has been linked */ AppleAccountInfo?: UserAppleIdInfo; + /** Battle.net account information, if a Battle.net account has been linked */ + BattleNetAccountInfo?: UserBattleNetInfo; /** Timestamp indicating when the user account was created */ Created: string; /** Custom ID information, if a custom ID has been assigned */ @@ -4890,6 +5812,8 @@ declare module PlayFabServerModels { GameCenterInfo?: UserGameCenterInfo; /** User Google account information, if a Google account has been linked */ GoogleInfo?: UserGoogleInfo; + /** User Google Play Games account information, if a Google Play Games account has been linked */ + GooglePlayGamesInfo?: UserGooglePlayGamesInfo; /** User iOS device information, if an iOS device has been linked */ IosDeviceInfo?: UserIosDeviceInfo; /** User Kongregate account information, if a Kongregate account has been linked */ @@ -4904,8 +5828,10 @@ declare module PlayFabServerModels { PlayFabId?: string; /** Personal information for the user which is considered more sensitive */ PrivateInfo?: UserPrivateAccountInfo; - /** User PSN account information, if a PSN account has been linked */ + /** User PlayStation :tm: Network account information, if a PlayStation :tm: Network account has been linked */ PsnInfo?: UserPsnInfo; + /** Server Custom ID information, if a server custom ID has been assigned */ + ServerCustomIdInfo?: UserServerCustomIdInfo; /** User Steam information, if a Steam account has been linked */ SteamInfo?: UserSteamInfo; /** Title-specific information for the user account */ @@ -4914,8 +5840,6 @@ declare module PlayFabServerModels { TwitchInfo?: UserTwitchInfo; /** User account name in the PlayFab service */ Username?: string; - /** Windows Hello account information, if a Windows Hello account has been linked */ - WindowsHelloInfo?: UserWindowsHelloInfo; /** User XBox account information, if a XBox account has been linked */ XboxInfo?: UserXboxInfo; @@ -4933,6 +5857,14 @@ declare module PlayFabServerModels { } + export interface UserBattleNetInfo { + /** Battle.net identifier */ + BattleNetAccountId?: string; + /** Battle.net display name */ + BattleNetBattleTag?: string; + + } + export interface UserCustomIdInfo { /** Custom ID */ CustomId?: string; @@ -4940,6 +5872,7 @@ declare module PlayFabServerModels { } type UserDataPermission = "Private" + | "Public"; export interface UserDataRecord { @@ -4969,6 +5902,11 @@ declare module PlayFabServerModels { } + type UserFamilyType = "None" + + | "Xbox" + | "Steam"; + export interface UserGameCenterInfo { /** Gamecenter identifier */ GameCenterId?: string; @@ -4989,6 +5927,16 @@ declare module PlayFabServerModels { } + export interface UserGooglePlayGamesInfo { + /** Avatar image url of the Google Play Games player */ + GooglePlayGamesPlayerAvatarImageUrl?: string; + /** Display name of the Google Play Games player */ + GooglePlayGamesPlayerDisplayName?: string; + /** Google Play Games player ID */ + GooglePlayGamesPlayerId?: string; + + } + export interface UserIosDeviceInfo { /** iOS device ID */ IosDeviceId?: string; @@ -5026,6 +5974,7 @@ declare module PlayFabServerModels { } type UserOrigination = "Organic" + | "Steam" | "Google" | "Amazon" @@ -5042,13 +5991,16 @@ declare module PlayFabServerModels { | "XboxLive" | "Parse" | "Twitch" - | "WindowsHello" | "ServerCustomId" | "NintendoSwitchDeviceId" | "FacebookInstantGamesId" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserPrivateAccountInfo { /** user email address */ @@ -5057,13 +6009,19 @@ declare module PlayFabServerModels { } export interface UserPsnInfo { - /** PSN account ID */ + /** PlayStation :tm: Network account ID */ PsnAccountId?: string; - /** PSN online ID */ + /** PlayStation :tm: Network online ID */ PsnOnlineId?: string; } + export interface UserServerCustomIdInfo { + /** Custom ID */ + CustomId?: string; + + } + export interface UserSettings { /** Boolean for whether this player is eligible for gathering device info. */ GatherDeviceInfo: boolean; @@ -5122,17 +6080,11 @@ declare module PlayFabServerModels { } - export interface UserWindowsHelloInfo { - /** Windows Hello Device Name */ - WindowsHelloDeviceName?: string; - /** Windows Hello Public Key Hash */ - WindowsHelloPublicKeyHash?: string; - - } - export interface UserXboxInfo { /** XBox user ID */ XboxUserId?: string; + /** XBox user sandbox */ + XboxUserSandbox?: string; } diff --git a/PlayFabSdk/src/Typings/PlayFab/Playfab.d.ts b/PlayFabSdk/src/Typings/PlayFab/Playfab.d.ts index 16df5f6f..441d70ef 100644 --- a/PlayFabSdk/src/Typings/PlayFab/Playfab.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/Playfab.d.ts @@ -1,28 +1,25 @@ /// /// -/// /// /// /// /// +/// /// /// /// /// +/// /// /// /// +/// declare module PlayFabModule { export interface ISettings { titleId: string; developerSecretKey: string; GlobalHeaderInjection?: { [key: string]: string }; - advertisingIdType: string; - advertisingIdValue: string; - disableAdvertising: boolean; - AD_TYPE_IDFA: string; - AD_TYPE_ANDROID_ID: string; productionServerUrl: string; } export interface IPlayFabRequestCommon { } @@ -35,6 +32,7 @@ declare module PlayFabModule { errorDetails?: { [key: string]: string[] }; request?: any; customData?: any; + retryAfterSeconds?: number; } export interface SuccessContainer extends IPlayFabError { data: TResult; @@ -51,33 +49,37 @@ declare var PlayFab: { settings: PlayFabModule.ISettings; AdminApi: PlayFabAdminModule.IPlayFabAdmin; ClientApi: PlayFabClientModule.IPlayFabClient; - MatchmakerApi: PlayFabMatchmakerModule.IPlayFabMatchmaker; ServerApi: PlayFabServerModule.IPlayFabServer; AuthenticationApi: PlayFabAuthenticationModule.IPlayFabAuthentication; CloudScriptApi: PlayFabCloudScriptModule.IPlayFabCloudScript; DataApi: PlayFabDataModule.IPlayFabData; + EconomyApi: PlayFabEconomyModule.IPlayFabEconomy; EventsApi: PlayFabEventsModule.IPlayFabEvents; ExperimentationApi: PlayFabExperimentationModule.IPlayFabExperimentation; InsightsApi: PlayFabInsightsModule.IPlayFabInsights; GroupsApi: PlayFabGroupsModule.IPlayFabGroups; + ProgressionApi: PlayFabProgressionModule.IPlayFabProgression; LocalizationApi: PlayFabLocalizationModule.IPlayFabLocalization; MultiplayerApi: PlayFabMultiplayerModule.IPlayFabMultiplayer; ProfilesApi: PlayFabProfilesModule.IPlayFabProfiles; + AddonApi: PlayFabAddonModule.IPlayFabAddon; }; // Continue to support older usage declare var PlayFabAdminSDK: PlayFabAdminModule.IPlayFabAdmin; declare var PlayFabClientSDK: PlayFabClientModule.IPlayFabClient; -declare var PlayFabMatchmakerSDK: PlayFabMatchmakerModule.IPlayFabMatchmaker; declare var PlayFabServerSDK: PlayFabServerModule.IPlayFabServer; declare var PlayFabAuthenticationSDK: PlayFabAuthenticationModule.IPlayFabAuthentication; declare var PlayFabCloudScriptSDK: PlayFabCloudScriptModule.IPlayFabCloudScript; declare var PlayFabDataSDK: PlayFabDataModule.IPlayFabData; +declare var PlayFabEconomySDK: PlayFabEconomyModule.IPlayFabEconomy; declare var PlayFabEventsSDK: PlayFabEventsModule.IPlayFabEvents; declare var PlayFabExperimentationSDK: PlayFabExperimentationModule.IPlayFabExperimentation; declare var PlayFabInsightsSDK: PlayFabInsightsModule.IPlayFabInsights; declare var PlayFabGroupsSDK: PlayFabGroupsModule.IPlayFabGroups; +declare var PlayFabProgressionSDK: PlayFabProgressionModule.IPlayFabProgression; declare var PlayFabLocalizationSDK: PlayFabLocalizationModule.IPlayFabLocalization; declare var PlayFabMultiplayerSDK: PlayFabMultiplayerModule.IPlayFabMultiplayer; declare var PlayFabProfilesSDK: PlayFabProfilesModule.IPlayFabProfiles; +declare var PlayFabAddonSDK: PlayFabAddonModule.IPlayFabAddon; diff --git a/PlayFabTestingExample/PlayFabApiTest.csproj b/PlayFabTestingExample/PlayFabApiTest.csproj index 22c78620..3d733211 100644 --- a/PlayFabTestingExample/PlayFabApiTest.csproj +++ b/PlayFabTestingExample/PlayFabApiTest.csproj @@ -7,7 +7,7 @@ {349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc} Library bin - v4.6.1 + v4.6.2 full true Latest @@ -26,18 +26,20 @@ - + + + @@ -45,18 +47,20 @@ - + + + diff --git a/PlayFabTestingExample/PlayFabApiTest.js b/PlayFabTestingExample/PlayFabApiTest.js index 74c3eb4a..9050b163 100644 --- a/PlayFabTestingExample/PlayFabApiTest.js +++ b/PlayFabTestingExample/PlayFabApiTest.js @@ -13,7 +13,7 @@ var PlayFabApiTests = { entityId: null, entityType: null, playFabId: null, - testNumber: null, + testNumber: null, // Arbitrary counter, used by several tests }, testConstants: { TEST_DATA_KEY: "testCounter", @@ -36,7 +36,6 @@ var PlayFabApiTests = { QUnit.test("InvalidLogin", PlayFabApiTests.InvalidLogin); QUnit.test("InvalidRegistration", PlayFabApiTests.InvalidRegistration); QUnit.test("LoginOrRegister", PlayFabApiTests.LoginOrRegister); - QUnit.test("LoginWithAdvertisingId", PlayFabApiTests.LoginWithAdvertisingId); setTimeout(function () { PlayFabApiTests.PostLoginTests(0); }, PlayFabApiTests.testRetryDelay); setTimeout(function () { PlayFabApiTests.PostEntityTokenTests(0); }, PlayFabApiTests.testRetryDelay); }, @@ -181,34 +180,6 @@ var PlayFabApiTests = { // By definition, a promise object should have a .then function, and Promise.resolve(promise) should equal promise assert.ok(typeof loginPromise.then === "function" && Promise.resolve(loginPromise) === loginPromise, "Testing whether the login request returned a promise object"); }, - /* CLIENT API - * Test that the login call sequence sends the AdvertisingId when set - */ - LoginWithAdvertisingId: function (assert) { - PlayFab.settings.advertisingIdType = PlayFab.settings.AD_TYPE_ANDROID_ID; - PlayFab.settings.advertisingIdValue = "PlayFabTestId"; - var loginDone = assert.async(); - var count = -1; - var finishAdvertId = function () { - count += 1; - if (count <= 10 && PlayFab.settings.advertisingIdType !== PlayFab.settings.AD_TYPE_ANDROID_ID + "_Successful") { - setTimeout(PlayFabApiTests.SimpleCallbackWrapper("finishAdvertId", finishAdvertId, assert), 200); - } - else { - assert.ok(PlayFab.settings.advertisingIdType === PlayFab.settings.AD_TYPE_ANDROID_ID + "_Successful", "Testing whether advertisingId submitted properly"); - loginDone(); - } - }; - var advertLoginCallback = function (result, error) { - PlayFabApiTests.VerifyNullError(result, error, assert, "Testing Advert-Login result"); - setTimeout(PlayFabApiTests.SimpleCallbackWrapper("finishAdvertId", finishAdvertId, assert), 200); - }; - var loginRequest = { - CustomId: PlayFab.buildIdentifier, - CreateAccount: true - }; - Promise.resolve(PlayFabClientSDK.LoginWithCustomID(loginRequest, PlayFabApiTests.CallbackWrapper("advertLoginCallback", advertLoginCallback, assert))); - }, /* CLIENT API * Test a sequence of calls that modifies saved data, * and verifies that the next sequential API call contains updated data. diff --git a/PlayFabTestingExample/PlayFabApiTest.ts b/PlayFabTestingExample/PlayFabApiTest.ts index c78f04e6..336ffa7f 100644 --- a/PlayFabTestingExample/PlayFabApiTest.ts +++ b/PlayFabTestingExample/PlayFabApiTest.ts @@ -43,7 +43,6 @@ var PlayFabApiTests = { QUnit.test("InvalidLogin", PlayFabApiTests.InvalidLogin); QUnit.test("InvalidRegistration", PlayFabApiTests.InvalidRegistration); QUnit.test("LoginOrRegister", PlayFabApiTests.LoginOrRegister); - QUnit.test("LoginWithAdvertisingId", PlayFabApiTests.LoginWithAdvertisingId); setTimeout(function (): void { PlayFabApiTests.PostLoginTests(0); }, PlayFabApiTests.testRetryDelay); setTimeout(function (): void { PlayFabApiTests.PostEntityTokenTests(0); }, PlayFabApiTests.testRetryDelay); @@ -207,35 +206,6 @@ var PlayFabApiTests = { assert.ok(typeof loginPromise.then === "function" && Promise.resolve(loginPromise) === loginPromise, "Testing whether the login request returned a promise object"); }, - /* CLIENT API - * Test that the login call sequence sends the AdvertisingId when set - */ - LoginWithAdvertisingId: function (assert): void { - PlayFab.settings.advertisingIdType = PlayFab.settings.AD_TYPE_ANDROID_ID; - PlayFab.settings.advertisingIdValue = "PlayFabTestId"; - - var loginDone = assert.async(); - var count = -1; - var finishAdvertId = function (): void { - count += 1; - if (count <= 10 && PlayFab.settings.advertisingIdType !== PlayFab.settings.AD_TYPE_ANDROID_ID + "_Successful") { - setTimeout(PlayFabApiTests.SimpleCallbackWrapper("finishAdvertId", finishAdvertId, assert), 200); - } else { - assert.ok(PlayFab.settings.advertisingIdType === PlayFab.settings.AD_TYPE_ANDROID_ID + "_Successful", "Testing whether advertisingId submitted properly"); - loginDone(); - } - }; - var advertLoginCallback = function (result: PlayFabModule.SuccessContainer, error: PlayFabModule.IPlayFabError): void { - PlayFabApiTests.VerifyNullError(result, error, assert, "Testing Advert-Login result"); - setTimeout(PlayFabApiTests.SimpleCallbackWrapper("finishAdvertId", finishAdvertId, assert), 200); - }; - var loginRequest = { - CustomId: PlayFab.buildIdentifier, - CreateAccount: true - }; - Promise.resolve(PlayFabClientSDK.LoginWithCustomID(loginRequest, PlayFabApiTests.CallbackWrapper("advertLoginCallback", advertLoginCallback, assert))); - }, - /* CLIENT API * Test a sequence of calls that modifies saved data, * and verifies that the next sequential API call contains updated data. diff --git a/PlayFabTestingExample/index.html b/PlayFabTestingExample/index.html index 4aa18e8d..a60aec41 100644 --- a/PlayFabTestingExample/index.html +++ b/PlayFabTestingExample/index.html @@ -12,18 +12,20 @@ - + + + diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabAddonApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabAddonApi.js new file mode 100644 index 00000000..0680fa3e --- /dev/null +++ b/PlayFabTestingExample/src/PlayFab/PlayFabAddonApi.js @@ -0,0 +1,367 @@ +/// + +var PlayFab = typeof PlayFab != "undefined" ? PlayFab : {}; + +if(!PlayFab.settings) { + PlayFab.settings = { + titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) + developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) + GlobalHeaderInjection: null, + productionServerUrl: ".playfabapi.com" + } +} + +if(!PlayFab._internalSettings) { + PlayFab._internalSettings = { + entityToken: null, + sdkVersion: "1.217.260605", + requestGetParams: { + sdk: "JavaScriptSDK-1.217.260605" + }, + sessionTicket: null, + verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this + errorTitleId: "Must be have PlayFab.settings.titleId set to call this method", + errorLoggedIn: "Must be logged in to call this method", + errorEntityToken: "You must successfully call GetEntityToken before calling this", + errorSecretKey: "Must have PlayFab.settings.developerSecretKey set to call this method", + + GetServerUrl: function () { + if (!(PlayFab.settings.productionServerUrl.substring(0, 4) === "http")) { + if (PlayFab._internalSettings.verticalName) { + return "https://" + PlayFab._internalSettings.verticalName + PlayFab.settings.productionServerUrl; + } else { + return "https://" + PlayFab.settings.titleId + PlayFab.settings.productionServerUrl; + } + } else { + return PlayFab.settings.productionServerUrl; + } + }, + + InjectHeaders: function (xhr, headersObj) { + if (!headersObj) + return; + + for (var headerKey in headersObj) + { + try { + xhr.setRequestHeader(gHeaderKey, headersObj[headerKey]); + } catch (e) { + console.log("Failed to append header: " + headerKey + " = " + headersObj[headerKey] + "Error: " + e); + } + } + }, + + ExecuteRequest: function (url, request, authkey, authValue, callback, customData, extraHeaders) { + var resultPromise = new Promise(function (resolve, reject) { + if (callback != null && typeof (callback) !== "function") + throw "Callback must be null or a function"; + + if (request == null) + request = {}; + + var startTime = new Date(); + var requestBody = JSON.stringify(request); + + var urlArr = [url]; + var getParams = PlayFab._internalSettings.requestGetParams; + if (getParams != null) { + var firstParam = true; + for (var key in getParams) { + if (firstParam) { + urlArr.push("?"); + firstParam = false; + } else { + urlArr.push("&"); + } + urlArr.push(key); + urlArr.push("="); + urlArr.push(getParams[key]); + } + } + + var completeUrl = urlArr.join(""); + + var xhr = new XMLHttpRequest(); + // window.console.log("URL: " + completeUrl); + xhr.open("POST", completeUrl, true); + + xhr.setRequestHeader("Content-Type", "application/json"); + xhr.setRequestHeader("X-PlayFabSDK", "JavaScriptSDK-" + PlayFab._internalSettings.sdkVersion); + if (authkey != null) + xhr.setRequestHeader(authkey, authValue); + PlayFab._internalSettings.InjectHeaders(xhr, PlayFab.settings.GlobalHeaderInjection); + PlayFab._internalSettings.InjectHeaders(xhr, extraHeaders); + + xhr.onloadend = function () { + if (callback == null) + return; + + var result = PlayFab._internalSettings.GetPlayFabResponse(request, xhr, startTime, customData); + if (result.code === 200) { + callback(result, null); + } else { + callback(null, result); + } + } + + xhr.onerror = function () { + if (callback == null) + return; + + var result = PlayFab._internalSettings.GetPlayFabResponse(request, xhr, startTime, customData); + callback(null, result); + } + + xhr.send(requestBody); + xhr.onreadystatechange = function () { + if (this.readyState === 4) { + var xhrResult = PlayFab._internalSettings.GetPlayFabResponse(request, this, startTime, customData); + if (this.status === 200) { + resolve(xhrResult); + } else { + reject(xhrResult); + } + } + }; + }); + // Return a Promise so that calls to various API methods can be handled asynchronously + return resultPromise; + }, + + GetPlayFabResponse: function(request, xhr, startTime, customData) { + var result = null; + try { + // window.console.log("parsing json result: " + xhr.responseText); + result = JSON.parse(xhr.responseText); + } catch (e) { + result = { + code: 503, // Service Unavailable + status: "Service Unavailable", + error: "Connection error", + errorCode: 2, // PlayFabErrorCode.ConnectionError + errorMessage: xhr.responseText + }; + } + + result.CallBackTimeMS = new Date() - startTime; + result.Request = request; + result.CustomData = customData; + return result; + }, + + authenticationContext: { + PlayFabId: null, + EntityId: null, + EntityType: null, + SessionTicket: null, + EntityToken: null + }, + + UpdateAuthenticationContext: function (authenticationContext, result) { + var authenticationContextUpdates = {}; + if(result.data.PlayFabId !== null) { + PlayFab._internalSettings.authenticationContext.PlayFabId = result.data.PlayFabId; + authenticationContextUpdates.PlayFabId = result.data.PlayFabId; + } + if(result.data.SessionTicket !== null) { + PlayFab._internalSettings.authenticationContext.SessionTicket = result.data.SessionTicket; + authenticationContextUpdates.SessionTicket = result.data.SessionTicket; + } + if (result.data.EntityToken !== null) { + PlayFab._internalSettings.authenticationContext.EntityId = result.data.EntityToken.Entity.Id; + authenticationContextUpdates.EntityId = result.data.EntityToken.Entity.Id; + PlayFab._internalSettings.authenticationContext.EntityType = result.data.EntityToken.Entity.Type; + authenticationContextUpdates.EntityType = result.data.EntityToken.Entity.Type; + PlayFab._internalSettings.authenticationContext.EntityToken = result.data.EntityToken.EntityToken; + authenticationContextUpdates.EntityToken = result.data.EntityToken.EntityToken; + } + // Update the authenticationContext with values from the result + authenticationContext = Object.assign(authenticationContext, authenticationContextUpdates); + return authenticationContext; + }, + + AuthInfoMap: { + "X-EntityToken": { + authAttr: "entityToken", + authError: "errorEntityToken" + }, + "X-Authorization": { + authAttr: "sessionTicket", + authError: "errorLoggedIn" + }, + "X-SecretKey": { + authAttr: "developerSecretKey", + authError: "errorSecretKey" + } + }, + + GetAuthInfo: function (request, authKey) { + // Use the most-recently saved authKey, unless one was provided in the request via the AuthenticationContext + var authError = PlayFab._internalSettings.AuthInfoMap[authKey].authError; + var authAttr = PlayFab._internalSettings.AuthInfoMap[authKey].authAttr; + var defaultAuthValue = null; + if (authAttr === "entityToken") + defaultAuthValue = PlayFab._internalSettings.entityToken; + else if (authAttr === "sessionTicket") + defaultAuthValue = PlayFab._internalSettings.sessionTicket; + else if (authAttr === "developerSecretKey") + defaultAuthValue = PlayFab.settings.developerSecretKey; + var authValue = request.AuthenticationContext ? request.AuthenticationContext[authAttr] : defaultAuthValue; + return {"authKey": authKey, "authValue": authValue, "authError": authError}; + }, + + ExecuteRequestWrapper: function (apiURL, request, authKey, callback, customData, extraHeaders) { + var authValue = null; + if (authKey !== null){ + var authInfo = PlayFab._internalSettings.GetAuthInfo(request, authKey=authKey); + var authKey = authInfo.authKey, authValue = authInfo.authValue, authError = authInfo.authError; + + if (!authValue) throw authError; + } + return PlayFab._internalSettings.ExecuteRequest(PlayFab._internalSettings.GetServerUrl() + apiURL, request, authKey, authValue, callback, customData, extraHeaders); + } + } +} + +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; +PlayFab.GenerateErrorReport = function (error) { + if (error == null) + return ""; + var fullErrors = error.errorMessage; + for (var paramName in error.errorDetails) + for (var msgIdx in error.errorDetails[paramName]) + fullErrors += "\n" + paramName + ": " + error.errorDetails[paramName][msgIdx]; + return fullErrors; +}; + +PlayFab.AddonApi = { + ForgetAllCredentials: function () { + PlayFab._internalSettings.sessionTicket = null; + PlayFab._internalSettings.entityToken = null; + }, + + CreateOrUpdateApple: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateApple", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateFacebook: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateFacebook", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateFacebookInstantGames: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateFacebookInstantGames", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateGoogle: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateGoogle", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateKongregate: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateKongregate", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateNintendo: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateNintendo", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdatePSN: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdatePSN", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateSteam: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateSteam", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateToxMod: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateToxMod", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateOrUpdateTwitch: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/CreateOrUpdateTwitch", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteApple: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteApple", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteFacebook: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteFacebook", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteFacebookInstantGames: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteFacebookInstantGames", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteGoogle: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteGoogle", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteKongregate: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteKongregate", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteNintendo: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteNintendo", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeletePSN: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeletePSN", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteSteam: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteSteam", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteToxMod: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteToxMod", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteTwitch: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/DeleteTwitch", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetApple: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetApple", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetFacebook: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetFacebook", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetFacebookInstantGames: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetFacebookInstantGames", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetGoogle: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetGoogle", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetKongregate: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetKongregate", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetNintendo: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetNintendo", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetPSN: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetPSN", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetSteam: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetSteam", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetToxMod: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetToxMod", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetTwitch: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Addon/GetTwitch", request, "X-EntityToken", callback, customData, extraHeaders); + }, + +}; + +var PlayFabAddonSDK = PlayFab.AddonApi; + diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabAdminApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabAdminApi.js index b6a79f8e..5b4f9aef 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabAdminApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabAdminApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -265,10 +257,6 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/AddPlayerTag", request, "X-SecretKey", callback, customData, extraHeaders); }, - AddServerBuild: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/AddServerBuild", request, "X-SecretKey", callback, customData, extraHeaders); - }, - AddUserVirtualCurrency: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/AddUserVirtualCurrency", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -321,6 +309,14 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/DeleteMasterPlayerAccount", request, "X-SecretKey", callback, customData, extraHeaders); }, + DeleteMasterPlayerEventData: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/DeleteMasterPlayerEventData", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + DeleteMembershipSubscription: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/DeleteMembershipSubscription", request, "X-SecretKey", callback, customData, extraHeaders); + }, + DeleteOpenIdConnection: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/DeleteOpenIdConnection", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -329,6 +325,10 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/DeletePlayer", request, "X-SecretKey", callback, customData, extraHeaders); }, + DeletePlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/DeletePlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); + }, + DeletePlayerSharedSecret: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/DeletePlayerSharedSecret", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -357,6 +357,10 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ExportMasterPlayerData", request, "X-SecretKey", callback, customData, extraHeaders); }, + ExportPlayersInSegment: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ExportPlayersInSegment", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetActionsOnPlayersInSegmentTaskInstance: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetActionsOnPlayersInSegmentTaskInstance", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -393,18 +397,14 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetDataReport", request, "X-SecretKey", callback, customData, extraHeaders); }, - GetMatchmakerGameInfo: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetMatchmakerGameInfo", request, "X-SecretKey", callback, customData, extraHeaders); - }, - - GetMatchmakerGameModes: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetMatchmakerGameModes", request, "X-SecretKey", callback, customData, extraHeaders); - }, - GetPlayedTitleList: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetPlayedTitleList", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetPlayerCustomProperty: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetPlayerCustomProperty", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetPlayerIdFromAuthToken: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetPlayerIdFromAuthToken", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -421,10 +421,6 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetPlayerSharedSecrets", request, "X-SecretKey", callback, customData, extraHeaders); }, - GetPlayersInSegment: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetPlayersInSegment", request, "X-SecretKey", callback, customData, extraHeaders); - }, - GetPlayerStatisticDefinitions: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetPlayerStatisticDefinitions", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -449,16 +445,16 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetRandomResultTables", request, "X-SecretKey", callback, customData, extraHeaders); }, - GetSegments: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetSegments", request, "X-SecretKey", callback, customData, extraHeaders); + GetSegmentExport: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetSegmentExport", request, "X-SecretKey", callback, customData, extraHeaders); }, - GetServerBuildInfo: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetServerBuildInfo", request, "X-SecretKey", callback, customData, extraHeaders); + GetSegmentPlayerCount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetSegmentPlayerCount", request, "X-SecretKey", callback, customData, extraHeaders); }, - GetServerBuildUploadUrl: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetServerBuildUploadUrl", request, "X-SecretKey", callback, customData, extraHeaders); + GetSegments: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetSegments", request, "X-SecretKey", callback, customData, extraHeaders); }, GetStoreItems: function (request, callback, customData, extraHeaders) { @@ -533,22 +529,14 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListOpenIdConnection", request, "X-SecretKey", callback, customData, extraHeaders); }, - ListServerBuilds: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListServerBuilds", request, "X-SecretKey", callback, customData, extraHeaders); + ListPlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListPlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); }, ListVirtualCurrencyTypes: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListVirtualCurrencyTypes", request, "X-SecretKey", callback, customData, extraHeaders); }, - ModifyMatchmakerGameModes: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ModifyMatchmakerGameModes", request, "X-SecretKey", callback, customData, extraHeaders); - }, - - ModifyServerBuild: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ModifyServerBuild", request, "X-SecretKey", callback, customData, extraHeaders); - }, - RefundPurchase: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/RefundPurchase", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -557,10 +545,6 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/RemovePlayerTag", request, "X-SecretKey", callback, customData, extraHeaders); }, - RemoveServerBuild: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/RemoveServerBuild", request, "X-SecretKey", callback, customData, extraHeaders); - }, - RemoveVirtualCurrencyTypes: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/RemoveVirtualCurrencyTypes", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -609,6 +593,10 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/SetCatalogItems", request, "X-SecretKey", callback, customData, extraHeaders); }, + SetMembershipOverride: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/SetMembershipOverride", request, "X-SecretKey", callback, customData, extraHeaders); + }, + SetPlayerSecret: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/SetPlayerSecret", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -661,6 +649,10 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/UpdateOpenIdConnection", request, "X-SecretKey", callback, customData, extraHeaders); }, + UpdatePlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/UpdatePlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); + }, + UpdatePlayerSharedSecret: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/UpdatePlayerSharedSecret", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -716,6 +708,11 @@ PlayFab.AdminApi = { UpdateUserTitleDisplayName: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/UpdateUserTitleDisplayName", request, "X-SecretKey", callback, customData, extraHeaders); }, + + ValidateApiPolicy: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ValidateApiPolicy", request, "X-SecretKey", callback, customData, extraHeaders); + }, + }; var PlayFabAdminSDK = PlayFab.AdminApi; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabAuthenticationApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabAuthenticationApi.js index c6efc814..9ec5b672 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabAuthenticationApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabAuthenticationApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -249,6 +241,20 @@ PlayFab.AuthenticationApi = { PlayFab._internalSettings.entityToken = null; }, + AuthenticateGameServerWithCustomId: function (request, callback, customData, extraHeaders) { + var overloadCallback = function (result, error) { + if (result != null && result.data.EntityToken != null && result.data.EntityToken.EntityToken != null) + PlayFab._internalSettings.entityToken = result.data.EntityToken.EntityToken; + if (callback != null && typeof (callback) === "function") + callback(result, error); + }; + return PlayFab._internalSettings.ExecuteRequestWrapper("/GameServerIdentity/AuthenticateGameServerWithCustomId", request, "X-EntityToken", overloadCallback, customData, extraHeaders); + }, + + Delete: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/GameServerIdentity/Delete", request, "X-EntityToken", callback, customData, extraHeaders); + }, + GetEntityToken: function (request, callback, customData, extraHeaders) { var authKey = null; var authValue = null; if (!authKey && PlayFab._internalSettings.sessionTicket) { var authInfo = PlayFab._internalSettings.GetAuthInfo(request, authKey="X-Authorization"); authKey = authInfo.authKey, authValue = authInfo.authValue; } @@ -265,6 +271,7 @@ PlayFab.AuthenticationApi = { ValidateEntityToken: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Authentication/ValidateEntityToken", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabAuthenticationSDK = PlayFab.AuthenticationApi; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabClientApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabClientApi.js index 3e4bfa7d..d079ce97 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabClientApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabClientApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -286,14 +278,7 @@ PlayFab.ClientApi = { }, AttributeInstall: function (request, callback, customData, extraHeaders) { - var overloadCallback = function (result, error) { - // Modify advertisingIdType: Prevents us from sending the id multiple times, and allows automated tests to determine id was sent successfully - PlayFab.settings.advertisingIdType += "_Successful"; - - if (callback != null && typeof (callback) === "function") - callback(result, error); - }; - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/AttributeInstall", request, "X-Authorization", overloadCallback, customData, extraHeaders); + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/AttributeInstall", request, "X-Authorization", callback, customData, extraHeaders); }, CancelTrade: function (request, callback, customData, extraHeaders) { @@ -328,6 +313,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/CreateSharedGroup", request, "X-Authorization", callback, customData, extraHeaders); }, + DeletePlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/DeletePlayerCustomProperties", request, "X-Authorization", callback, customData, extraHeaders); + }, + ExecuteCloudScript: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/ExecuteCloudScript", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -372,10 +361,6 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetContentDownloadUrl", request, "X-Authorization", callback, customData, extraHeaders); }, - GetCurrentGames: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetCurrentGames", request, "X-Authorization", callback, customData, extraHeaders); - }, - GetFriendLeaderboard: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetFriendLeaderboard", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -388,10 +373,6 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetFriendsList", request, "X-Authorization", callback, customData, extraHeaders); }, - GetGameServerRegions: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetGameServerRegions", request, "X-Authorization", callback, customData, extraHeaders); - }, - GetLeaderboard: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetLeaderboard", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -420,6 +401,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayerCombinedInfo", request, "X-Authorization", callback, customData, extraHeaders); }, + GetPlayerCustomProperty: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayerCustomProperty", request, "X-Authorization", callback, customData, extraHeaders); + }, + GetPlayerProfile: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayerProfile", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -444,6 +429,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayerTrades", request, "X-Authorization", callback, customData, extraHeaders); }, + GetPlayFabIDsFromBattleNetAccountIds: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromBattleNetAccountIds", request, "X-Authorization", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromFacebookIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromFacebookIDs", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -464,22 +453,42 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromGoogleIDs", request, "X-Authorization", callback, customData, extraHeaders); }, + GetPlayFabIDsFromGooglePlayGamesPlayerIDs: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromGooglePlayGamesPlayerIDs", request, "X-Authorization", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromKongregateIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromKongregateIDs", request, "X-Authorization", callback, customData, extraHeaders); }, + GetPlayFabIDsFromNintendoServiceAccountIds: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromNintendoServiceAccountIds", request, "X-Authorization", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromNintendoSwitchDeviceIds: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromNintendoSwitchDeviceIds", request, "X-Authorization", callback, customData, extraHeaders); }, + GetPlayFabIDsFromOpenIdSubjectIdentifiers: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromOpenIdSubjectIdentifiers", request, "X-Authorization", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromPSNAccountIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromPSNAccountIDs", request, "X-Authorization", callback, customData, extraHeaders); }, + GetPlayFabIDsFromPSNOnlineIDs: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromPSNOnlineIDs", request, "X-Authorization", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromSteamIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromSteamIDs", request, "X-Authorization", callback, customData, extraHeaders); }, + GetPlayFabIDsFromSteamNames: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromSteamNames", request, "X-Authorization", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromTwitchIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetPlayFabIDsFromTwitchIDs", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -544,13 +553,6 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetUserReadOnlyData", request, "X-Authorization", callback, customData, extraHeaders); }, - /** - * @deprecated Do not use - */ - GetWindowsHelloChallenge: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GetWindowsHelloChallenge", request, null, callback, customData, extraHeaders); - }, - GrantCharacterToUser: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/GrantCharacterToUser", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -563,6 +565,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkApple", request, "X-Authorization", callback, customData, extraHeaders); }, + LinkBattleNetAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkBattleNetAccount", request, "X-Authorization", callback, customData, extraHeaders); + }, + LinkCustomID: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkCustomID", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -583,6 +589,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkGoogleAccount", request, "X-Authorization", callback, customData, extraHeaders); }, + LinkGooglePlayGamesServicesAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkGooglePlayGamesServicesAccount", request, "X-Authorization", callback, customData, extraHeaders); + }, + LinkIOSDeviceID: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkIOSDeviceID", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -615,17 +625,14 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkTwitch", request, "X-Authorization", callback, customData, extraHeaders); }, - /** - * @deprecated Do not use - */ - LinkWindowsHello: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkWindowsHello", request, "X-Authorization", callback, customData, extraHeaders); - }, - LinkXboxAccount: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LinkXboxAccount", request, "X-Authorization", callback, customData, extraHeaders); }, + ListPlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/ListPlayerCustomProperties", request, "X-Authorization", callback, customData, extraHeaders); + }, + LoginWithAndroidDeviceID: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts @@ -641,7 +648,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -666,7 +672,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -676,6 +681,30 @@ PlayFab.ClientApi = { return new Promise(function(resolve){resolve(authenticationContext);}); }, + LoginWithBattleNet: function (request, callback, customData, extraHeaders) { + request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; + // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts + // Deep-copy the authenticationContext here to safely update it + var authenticationContext = JSON.parse(JSON.stringify(PlayFab._internalSettings.authenticationContext)); + var overloadCallback = function (result, error) { + if (result != null) { + if(result.data.SessionTicket != null) { + PlayFab._internalSettings.sessionTicket = result.data.SessionTicket; + } + if (result.data.EntityToken != null) { + PlayFab._internalSettings.entityToken = result.data.EntityToken.EntityToken; + } + // Apply the updates for the AuthenticationContext returned to the client + authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); + } + if (callback != null && typeof (callback) === "function") + callback(result, error); + }; + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithBattleNet", request, null, overloadCallback, customData, extraHeaders); + // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() + return new Promise(function(resolve){resolve(authenticationContext);}); + }, + LoginWithCustomID: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts @@ -691,7 +720,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -716,7 +744,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -741,7 +768,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -766,7 +792,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -791,7 +816,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -816,7 +840,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -826,7 +849,7 @@ PlayFab.ClientApi = { return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithIOSDeviceID: function (request, callback, customData, extraHeaders) { + LoginWithGooglePlayGamesServices: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -841,17 +864,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithIOSDeviceID", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithGooglePlayGamesServices", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithKongregate: function (request, callback, customData, extraHeaders) { + LoginWithIOSDeviceID: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -866,17 +888,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithKongregate", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithIOSDeviceID", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithNintendoServiceAccount: function (request, callback, customData, extraHeaders) { + LoginWithKongregate: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -891,17 +912,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithNintendoServiceAccount", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithKongregate", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithNintendoSwitchDeviceId: function (request, callback, customData, extraHeaders) { + LoginWithNintendoServiceAccount: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -916,17 +936,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithNintendoSwitchDeviceId", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithNintendoServiceAccount", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithOpenIdConnect: function (request, callback, customData, extraHeaders) { + LoginWithNintendoSwitchDeviceId: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -941,17 +960,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithOpenIdConnect", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithNintendoSwitchDeviceId", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithPlayFab: function (request, callback, customData, extraHeaders) { + LoginWithOpenIdConnect: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -966,17 +984,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithPlayFab", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithOpenIdConnect", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithPSN: function (request, callback, customData, extraHeaders) { + LoginWithPlayFab: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -991,17 +1008,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithPSN", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithPlayFab", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithSteam: function (request, callback, customData, extraHeaders) { + LoginWithPSN: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -1016,17 +1032,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithSteam", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithPSN", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - LoginWithTwitch: function (request, callback, customData, extraHeaders) { + LoginWithSteam: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -1041,20 +1056,16 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithTwitch", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithSteam", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, - /** - * @deprecated Do not use - */ - LoginWithWindowsHello: function (request, callback, customData, extraHeaders) { + LoginWithTwitch: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -1069,12 +1080,11 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithWindowsHello", request, null, overloadCallback, customData, extraHeaders); + PlayFab._internalSettings.ExecuteRequestWrapper("/Client/LoginWithTwitch", request, null, overloadCallback, customData, extraHeaders); // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() return new Promise(function(resolve){resolve(authenticationContext);}); }, @@ -1094,7 +1104,6 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); @@ -1104,10 +1113,6 @@ PlayFab.ClientApi = { return new Promise(function(resolve){resolve(authenticationContext);}); }, - Matchmake: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/Matchmake", request, "X-Authorization", callback, customData, extraHeaders); - }, - OpenTrade: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/OpenTrade", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -1133,25 +1138,6 @@ PlayFab.ClientApi = { }, RegisterPlayFabUser: function (request, callback, customData, extraHeaders) { - request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; - // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts - // Deep-copy the authenticationContext here to safely update it - var authenticationContext = JSON.parse(JSON.stringify(PlayFab._internalSettings.authenticationContext)); - var overloadCallback = function (result, error) { - if (result != null && result.data.SessionTicket != null) { - PlayFab._internalSettings.sessionTicket = result.data.SessionTicket; - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); - } - if (callback != null && typeof (callback) === "function") - callback(result, error); - }; - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/RegisterPlayFabUser", request, null, overloadCallback, customData, extraHeaders); - }, - - /** - * @deprecated Do not use - */ - RegisterWithWindowsHello: function (request, callback, customData, extraHeaders) { request.TitleId = PlayFab.settings.titleId ? PlayFab.settings.titleId : request.TitleId; if (!request.TitleId) throw PlayFab._internalSettings.errorTitleId; // PlayFab._internalSettings.authenticationContext can be modified by other asynchronous login attempts // Deep-copy the authenticationContext here to safely update it @@ -1166,14 +1152,11 @@ PlayFab.ClientApi = { } // Apply the updates for the AuthenticationContext returned to the client authenticationContext = PlayFab._internalSettings.UpdateAuthenticationContext(authenticationContext, result); - PlayFab.ClientApi._MultiStepClientLogin(result.data.SettingsForUser.NeedsAttribution); } if (callback != null && typeof (callback) === "function") callback(result, error); }; - PlayFab._internalSettings.ExecuteRequestWrapper("/Client/RegisterWithWindowsHello", request, null, overloadCallback, customData, extraHeaders); - // Return a Promise so that multiple asynchronous calls to this method can be handled simultaneously with Promise.all() - return new Promise(function(resolve){resolve(authenticationContext);}); + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/RegisterPlayFabUser", request, null, overloadCallback, customData, extraHeaders); }, RemoveContactEmail: function (request, callback, customData, extraHeaders) { @@ -1224,10 +1207,6 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/SetPlayerSecret", request, "X-Authorization", callback, customData, extraHeaders); }, - StartGame: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/StartGame", request, "X-Authorization", callback, customData, extraHeaders); - }, - StartPurchase: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/StartPurchase", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -1244,6 +1223,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkApple", request, "X-Authorization", callback, customData, extraHeaders); }, + UnlinkBattleNetAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkBattleNetAccount", request, "X-Authorization", callback, customData, extraHeaders); + }, + UnlinkCustomID: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkCustomID", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -1264,6 +1247,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkGoogleAccount", request, "X-Authorization", callback, customData, extraHeaders); }, + UnlinkGooglePlayGamesServicesAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkGooglePlayGamesServicesAccount", request, "X-Authorization", callback, customData, extraHeaders); + }, + UnlinkIOSDeviceID: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkIOSDeviceID", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -1296,13 +1283,6 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkTwitch", request, "X-Authorization", callback, customData, extraHeaders); }, - /** - * @deprecated Do not use - */ - UnlinkWindowsHello: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkWindowsHello", request, "X-Authorization", callback, customData, extraHeaders); - }, - UnlinkXboxAccount: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UnlinkXboxAccount", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -1327,6 +1307,10 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UpdateCharacterStatistics", request, "X-Authorization", callback, customData, extraHeaders); }, + UpdatePlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UpdatePlayerCustomProperties", request, "X-Authorization", callback, customData, extraHeaders); + }, + UpdatePlayerStatistics: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/UpdatePlayerStatistics", request, "X-Authorization", callback, customData, extraHeaders); }, @@ -1375,19 +1359,6 @@ PlayFab.ClientApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Client/WriteTitleEvent", request, "X-Authorization", callback, customData, extraHeaders); }, - _MultiStepClientLogin: function (needsAttribution) { - if (needsAttribution && !PlayFab.settings.disableAdvertising && PlayFab.settings.advertisingIdType !== null && PlayFab.settings.advertisingIdValue !== null) { - var request = {}; - if (PlayFab.settings.advertisingIdType === PlayFab.settings.AD_TYPE_IDFA) { - request.Idfa = PlayFab.settings.advertisingIdValue; - } else if (PlayFab.settings.advertisingIdType === PlayFab.settings.AD_TYPE_ANDROID_ID) { - request.Adid = PlayFab.settings.advertisingIdValue; - } else { - return; - } - PlayFab.ClientApi.AttributeInstall(request, null); - } - } }; var PlayFabClientSDK = PlayFab.ClientApi; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabCloudScriptApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabCloudScriptApi.js index 5a315761..950a2bf7 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabCloudScriptApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabCloudScriptApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -257,6 +249,14 @@ PlayFab.CloudScriptApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/ExecuteFunction", request, "X-EntityToken", callback, customData, extraHeaders); }, + GetFunction: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/GetFunction", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ListEventHubFunctions: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/ListEventHubFunctions", request, "X-EntityToken", callback, customData, extraHeaders); + }, + ListFunctions: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/ListFunctions", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -285,6 +285,10 @@ PlayFab.CloudScriptApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/PostFunctionResultForScheduledTask", request, "X-EntityToken", callback, customData, extraHeaders); }, + RegisterEventHubFunction: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/RegisterEventHubFunction", request, "X-EntityToken", callback, customData, extraHeaders); + }, + RegisterHttpFunction: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/RegisterHttpFunction", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -296,6 +300,7 @@ PlayFab.CloudScriptApi = { UnregisterFunction: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/CloudScript/UnregisterFunction", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabCloudScriptSDK = PlayFab.CloudScriptApi; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabDataApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabDataApi.js index 20c16985..9b7aebbc 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabDataApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabDataApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -276,6 +268,7 @@ PlayFab.DataApi = { SetObjects: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Object/SetObjects", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabDataSDK = PlayFab.DataApi; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabEconomyApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabEconomyApi.js new file mode 100644 index 00000000..f0d972c4 --- /dev/null +++ b/PlayFabTestingExample/src/PlayFab/PlayFabEconomyApi.js @@ -0,0 +1,431 @@ +/// + +var PlayFab = typeof PlayFab != "undefined" ? PlayFab : {}; + +if(!PlayFab.settings) { + PlayFab.settings = { + titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) + developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) + GlobalHeaderInjection: null, + productionServerUrl: ".playfabapi.com" + } +} + +if(!PlayFab._internalSettings) { + PlayFab._internalSettings = { + entityToken: null, + sdkVersion: "1.217.260605", + requestGetParams: { + sdk: "JavaScriptSDK-1.217.260605" + }, + sessionTicket: null, + verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this + errorTitleId: "Must be have PlayFab.settings.titleId set to call this method", + errorLoggedIn: "Must be logged in to call this method", + errorEntityToken: "You must successfully call GetEntityToken before calling this", + errorSecretKey: "Must have PlayFab.settings.developerSecretKey set to call this method", + + GetServerUrl: function () { + if (!(PlayFab.settings.productionServerUrl.substring(0, 4) === "http")) { + if (PlayFab._internalSettings.verticalName) { + return "https://" + PlayFab._internalSettings.verticalName + PlayFab.settings.productionServerUrl; + } else { + return "https://" + PlayFab.settings.titleId + PlayFab.settings.productionServerUrl; + } + } else { + return PlayFab.settings.productionServerUrl; + } + }, + + InjectHeaders: function (xhr, headersObj) { + if (!headersObj) + return; + + for (var headerKey in headersObj) + { + try { + xhr.setRequestHeader(gHeaderKey, headersObj[headerKey]); + } catch (e) { + console.log("Failed to append header: " + headerKey + " = " + headersObj[headerKey] + "Error: " + e); + } + } + }, + + ExecuteRequest: function (url, request, authkey, authValue, callback, customData, extraHeaders) { + var resultPromise = new Promise(function (resolve, reject) { + if (callback != null && typeof (callback) !== "function") + throw "Callback must be null or a function"; + + if (request == null) + request = {}; + + var startTime = new Date(); + var requestBody = JSON.stringify(request); + + var urlArr = [url]; + var getParams = PlayFab._internalSettings.requestGetParams; + if (getParams != null) { + var firstParam = true; + for (var key in getParams) { + if (firstParam) { + urlArr.push("?"); + firstParam = false; + } else { + urlArr.push("&"); + } + urlArr.push(key); + urlArr.push("="); + urlArr.push(getParams[key]); + } + } + + var completeUrl = urlArr.join(""); + + var xhr = new XMLHttpRequest(); + // window.console.log("URL: " + completeUrl); + xhr.open("POST", completeUrl, true); + + xhr.setRequestHeader("Content-Type", "application/json"); + xhr.setRequestHeader("X-PlayFabSDK", "JavaScriptSDK-" + PlayFab._internalSettings.sdkVersion); + if (authkey != null) + xhr.setRequestHeader(authkey, authValue); + PlayFab._internalSettings.InjectHeaders(xhr, PlayFab.settings.GlobalHeaderInjection); + PlayFab._internalSettings.InjectHeaders(xhr, extraHeaders); + + xhr.onloadend = function () { + if (callback == null) + return; + + var result = PlayFab._internalSettings.GetPlayFabResponse(request, xhr, startTime, customData); + if (result.code === 200) { + callback(result, null); + } else { + callback(null, result); + } + } + + xhr.onerror = function () { + if (callback == null) + return; + + var result = PlayFab._internalSettings.GetPlayFabResponse(request, xhr, startTime, customData); + callback(null, result); + } + + xhr.send(requestBody); + xhr.onreadystatechange = function () { + if (this.readyState === 4) { + var xhrResult = PlayFab._internalSettings.GetPlayFabResponse(request, this, startTime, customData); + if (this.status === 200) { + resolve(xhrResult); + } else { + reject(xhrResult); + } + } + }; + }); + // Return a Promise so that calls to various API methods can be handled asynchronously + return resultPromise; + }, + + GetPlayFabResponse: function(request, xhr, startTime, customData) { + var result = null; + try { + // window.console.log("parsing json result: " + xhr.responseText); + result = JSON.parse(xhr.responseText); + } catch (e) { + result = { + code: 503, // Service Unavailable + status: "Service Unavailable", + error: "Connection error", + errorCode: 2, // PlayFabErrorCode.ConnectionError + errorMessage: xhr.responseText + }; + } + + result.CallBackTimeMS = new Date() - startTime; + result.Request = request; + result.CustomData = customData; + return result; + }, + + authenticationContext: { + PlayFabId: null, + EntityId: null, + EntityType: null, + SessionTicket: null, + EntityToken: null + }, + + UpdateAuthenticationContext: function (authenticationContext, result) { + var authenticationContextUpdates = {}; + if(result.data.PlayFabId !== null) { + PlayFab._internalSettings.authenticationContext.PlayFabId = result.data.PlayFabId; + authenticationContextUpdates.PlayFabId = result.data.PlayFabId; + } + if(result.data.SessionTicket !== null) { + PlayFab._internalSettings.authenticationContext.SessionTicket = result.data.SessionTicket; + authenticationContextUpdates.SessionTicket = result.data.SessionTicket; + } + if (result.data.EntityToken !== null) { + PlayFab._internalSettings.authenticationContext.EntityId = result.data.EntityToken.Entity.Id; + authenticationContextUpdates.EntityId = result.data.EntityToken.Entity.Id; + PlayFab._internalSettings.authenticationContext.EntityType = result.data.EntityToken.Entity.Type; + authenticationContextUpdates.EntityType = result.data.EntityToken.Entity.Type; + PlayFab._internalSettings.authenticationContext.EntityToken = result.data.EntityToken.EntityToken; + authenticationContextUpdates.EntityToken = result.data.EntityToken.EntityToken; + } + // Update the authenticationContext with values from the result + authenticationContext = Object.assign(authenticationContext, authenticationContextUpdates); + return authenticationContext; + }, + + AuthInfoMap: { + "X-EntityToken": { + authAttr: "entityToken", + authError: "errorEntityToken" + }, + "X-Authorization": { + authAttr: "sessionTicket", + authError: "errorLoggedIn" + }, + "X-SecretKey": { + authAttr: "developerSecretKey", + authError: "errorSecretKey" + } + }, + + GetAuthInfo: function (request, authKey) { + // Use the most-recently saved authKey, unless one was provided in the request via the AuthenticationContext + var authError = PlayFab._internalSettings.AuthInfoMap[authKey].authError; + var authAttr = PlayFab._internalSettings.AuthInfoMap[authKey].authAttr; + var defaultAuthValue = null; + if (authAttr === "entityToken") + defaultAuthValue = PlayFab._internalSettings.entityToken; + else if (authAttr === "sessionTicket") + defaultAuthValue = PlayFab._internalSettings.sessionTicket; + else if (authAttr === "developerSecretKey") + defaultAuthValue = PlayFab.settings.developerSecretKey; + var authValue = request.AuthenticationContext ? request.AuthenticationContext[authAttr] : defaultAuthValue; + return {"authKey": authKey, "authValue": authValue, "authError": authError}; + }, + + ExecuteRequestWrapper: function (apiURL, request, authKey, callback, customData, extraHeaders) { + var authValue = null; + if (authKey !== null){ + var authInfo = PlayFab._internalSettings.GetAuthInfo(request, authKey=authKey); + var authKey = authInfo.authKey, authValue = authInfo.authValue, authError = authInfo.authError; + + if (!authValue) throw authError; + } + return PlayFab._internalSettings.ExecuteRequest(PlayFab._internalSettings.GetServerUrl() + apiURL, request, authKey, authValue, callback, customData, extraHeaders); + } + } +} + +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; +PlayFab.GenerateErrorReport = function (error) { + if (error == null) + return ""; + var fullErrors = error.errorMessage; + for (var paramName in error.errorDetails) + for (var msgIdx in error.errorDetails[paramName]) + fullErrors += "\n" + paramName + ": " + error.errorDetails[paramName][msgIdx]; + return fullErrors; +}; + +PlayFab.EconomyApi = { + ForgetAllCredentials: function () { + PlayFab._internalSettings.sessionTicket = null; + PlayFab._internalSettings.entityToken = null; + }, + + AddInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/AddInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateDraftItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/CreateDraftItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateUploadUrls: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/CreateUploadUrls", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteEntityItemReviews: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/DeleteEntityItemReviews", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteInventoryCollection: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/DeleteInventoryCollection", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/DeleteInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/DeleteItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ExecuteInventoryOperations: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/ExecuteInventoryOperations", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ExecuteTransferOperations: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/ExecuteTransferOperations", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetCatalogConfig: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetCatalogConfig", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetDraftItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetDraftItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetDraftItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetDraftItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetEntityDraftItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetEntityDraftItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetEntityItemReview: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetEntityItemReview", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetInventoryCollectionIds: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/GetInventoryCollectionIds", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/GetInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetInventoryOperationStatus: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/GetInventoryOperationStatus", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetItemContainers: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItemContainers", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetItemModerationState: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItemModerationState", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetItemPublishStatus: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItemPublishStatus", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetItemReviews: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItemReviews", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetItemReviewSummary: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItemReviewSummary", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetTransactionHistory: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/GetTransactionHistory", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + PublishDraftItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/PublishDraftItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + PurchaseInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/PurchaseInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + RedeemAppleAppStoreInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/RedeemAppleAppStoreInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + RedeemAppleAppStoreWithJwsInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/RedeemAppleAppStoreWithJwsInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + RedeemGooglePlayInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/RedeemGooglePlayInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + RedeemMicrosoftStoreInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/RedeemMicrosoftStoreInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + RedeemNintendoEShopInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/RedeemNintendoEShopInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + RedeemPlayStationStoreInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/RedeemPlayStationStoreInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + RedeemSteamInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/RedeemSteamInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ReportItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/ReportItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ReportItemReview: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/ReportItemReview", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ReviewItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/ReviewItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SearchItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/SearchItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SetItemModerationState: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/SetItemModerationState", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SubmitItemReviewVote: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/SubmitItemReviewVote", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SubtractInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/SubtractInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + TakedownItemReviews: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/TakedownItemReviews", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + TransferInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/TransferInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UpdateCatalogConfig: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/UpdateCatalogConfig", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UpdateDraftItem: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/UpdateDraftItem", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UpdateInventoryItems: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/UpdateInventoryItems", request, "X-EntityToken", callback, customData, extraHeaders); + }, + +}; + +var PlayFabEconomySDK = PlayFab.EconomyApi; + diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabEventsApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabEventsApi.js index 31cb5e1e..3e2f69e6 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabEventsApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabEventsApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -249,6 +241,46 @@ PlayFab.EventsApi = { PlayFab._internalSettings.entityToken = null; }, + CreateTelemetryKey: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/CreateTelemetryKey", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteDataConnection: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/DeleteDataConnection", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteTelemetryKey: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/DeleteTelemetryKey", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetDataConnection: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/GetDataConnection", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetTelemetryKey: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/GetTelemetryKey", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ListDataConnections: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/ListDataConnections", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ListTelemetryKeys: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/ListTelemetryKeys", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SetDataConnection: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/SetDataConnection", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SetDataConnectionActive: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/SetDataConnectionActive", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SetTelemetryKeyActive: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/SetTelemetryKeyActive", request, "X-EntityToken", callback, customData, extraHeaders); + }, + WriteEvents: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/WriteEvents", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -256,6 +288,7 @@ PlayFab.EventsApi = { WriteTelemetryEvents: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Event/WriteTelemetryEvents", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabEventsSDK = PlayFab.EventsApi; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabExperimentationApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabExperimentationApi.js index 36b6220f..83c1e8f5 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabExperimentationApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabExperimentationApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -300,6 +292,7 @@ PlayFab.ExperimentationApi = { UpdateExperiment: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Experimentation/UpdateExperiment", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabExperimentationSDK = PlayFab.ExperimentationApi; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabGroupsApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabGroupsApi.js index 64382364..a7bc069a 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabGroupsApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabGroupsApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -348,6 +340,7 @@ PlayFab.GroupsApi = { UpdateRole: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Group/UpdateRole", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabGroupsSDK = PlayFab.GroupsApi; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabInsightsApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabInsightsApi.js index 3f4a70e3..82e192c3 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabInsightsApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabInsightsApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -272,6 +264,7 @@ PlayFab.InsightsApi = { SetStorageRetention: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Insights/SetStorageRetention", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabInsightsSDK = PlayFab.InsightsApi; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabLocalizationApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabLocalizationApi.js index be36aca6..4d6e370f 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabLocalizationApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabLocalizationApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -252,6 +244,7 @@ PlayFab.LocalizationApi = { GetLanguageList: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Locale/GetLanguageList", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabLocalizationSDK = PlayFab.LocalizationApi; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabMultiplayerApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabMultiplayerApi.js index f995af77..5296503e 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabMultiplayerApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabMultiplayerApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -281,6 +273,10 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/CreateBuildWithProcessBasedServer", request, "X-EntityToken", callback, customData, extraHeaders); }, + CreateLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/CreateLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + CreateMatchmakingTicket: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Match/CreateMatchmakingTicket", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -325,14 +321,34 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/DeleteContainerImageRepository", request, "X-EntityToken", callback, customData, extraHeaders); }, + DeleteLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/DeleteLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + DeleteRemoteUser: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/DeleteRemoteUser", request, "X-EntityToken", callback, customData, extraHeaders); }, + DeleteSecret: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/DeleteSecret", request, "X-EntityToken", callback, customData, extraHeaders); + }, + EnableMultiplayerServersForTitle: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/EnableMultiplayerServersForTitle", request, "X-EntityToken", callback, customData, extraHeaders); }, + FindFriendLobbies: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/FindFriendLobbies", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + FindLobbies: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/FindLobbies", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetAssetDownloadUrl: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/GetAssetDownloadUrl", request, "X-EntityToken", callback, customData, extraHeaders); + }, + GetAssetUploadUrl: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/GetAssetUploadUrl", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -349,6 +365,10 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/GetContainerRegistryCredentials", request, "X-EntityToken", callback, customData, extraHeaders); }, + GetLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/GetLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + GetMatch: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Match/GetMatch", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -397,10 +417,34 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/GetTitleMultiplayerServersQuotas", request, "X-EntityToken", callback, customData, extraHeaders); }, + InviteToLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/InviteToLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + JoinArrangedLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/JoinArrangedLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + JoinLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/JoinLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + JoinLobbyAsServer: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/JoinLobbyAsServer", request, "X-EntityToken", callback, customData, extraHeaders); + }, + JoinMatchmakingTicket: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Match/JoinMatchmakingTicket", request, "X-EntityToken", callback, customData, extraHeaders); }, + LeaveLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/LeaveLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + LeaveLobbyAsServer: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/LeaveLobbyAsServer", request, "X-EntityToken", callback, customData, extraHeaders); + }, + ListArchivedMultiplayerServers: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/ListArchivedMultiplayerServers", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -449,6 +493,10 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/ListQosServersForTitle", request, "X-EntityToken", callback, customData, extraHeaders); }, + ListSecretSummaries: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/ListSecretSummaries", request, "X-EntityToken", callback, customData, extraHeaders); + }, + ListServerBackfillTicketsForPlayer: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Match/ListServerBackfillTicketsForPlayer", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -465,10 +513,18 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Match/RemoveMatchmakingQueue", request, "X-EntityToken", callback, customData, extraHeaders); }, + RemoveMember: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/RemoveMember", request, "X-EntityToken", callback, customData, extraHeaders); + }, + RequestMultiplayerServer: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/RequestMultiplayerServer", request, "X-EntityToken", callback, customData, extraHeaders); }, + RequestPartyService: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Party/RequestPartyService", request, "X-EntityToken", callback, customData, extraHeaders); + }, + RolloverContainerRegistryCredentials: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/RolloverContainerRegistryCredentials", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -481,6 +537,22 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/ShutdownMultiplayerServer", request, "X-EntityToken", callback, customData, extraHeaders); }, + SubscribeToLobbyResource: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/SubscribeToLobbyResource", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SubscribeToMatchmakingResource: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Match/SubscribeToMatchmakingResource", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UnsubscribeFromLobbyResource: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/UnsubscribeFromLobbyResource", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UnsubscribeFromMatchmakingResource: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Match/UnsubscribeFromMatchmakingResource", request, "X-EntityToken", callback, customData, extraHeaders); + }, + UntagContainerImage: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/UntagContainerImage", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -501,9 +573,22 @@ PlayFab.MultiplayerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/UpdateBuildRegions", request, "X-EntityToken", callback, customData, extraHeaders); }, + UpdateLobby: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/UpdateLobby", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UpdateLobbyAsServer: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Lobby/UpdateLobbyAsServer", request, "X-EntityToken", callback, customData, extraHeaders); + }, + UploadCertificate: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/UploadCertificate", request, "X-EntityToken", callback, customData, extraHeaders); }, + + UploadSecret: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/MultiplayerServer/UploadSecret", request, "X-EntityToken", callback, customData, extraHeaders); + }, + }; var PlayFabMultiplayerSDK = PlayFab.MultiplayerApi; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabProfilesApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabProfilesApi.js index 36565fbe..4458cc60 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabProfilesApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabProfilesApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -265,6 +257,14 @@ PlayFab.ProfilesApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Profile/GetTitlePlayersFromMasterPlayerAccountIds", request, "X-EntityToken", callback, customData, extraHeaders); }, + GetTitlePlayersFromXboxLiveIDs: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Profile/GetTitlePlayersFromXboxLiveIDs", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + SetDisplayName: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Profile/SetDisplayName", request, "X-EntityToken", callback, customData, extraHeaders); + }, + SetGlobalPolicy: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Profile/SetGlobalPolicy", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -276,6 +276,7 @@ PlayFab.ProfilesApi = { SetProfilePolicy: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Profile/SetProfilePolicy", request, "X-EntityToken", callback, customData, extraHeaders); }, + }; var PlayFabProfilesSDK = PlayFab.ProfilesApi; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabMatchmakerApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabProgressionApi.js similarity index 63% rename from PlayFabTestingExample/src/PlayFab/PlayFabMatchmakerApi.js rename to PlayFabTestingExample/src/PlayFab/PlayFabProgressionApi.js index 7b16e38d..18a54ef9 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabMatchmakerApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabProgressionApi.js @@ -1,4 +1,4 @@ -/// +/// var PlayFab = typeof PlayFab != "undefined" ? PlayFab : {}; @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -243,32 +235,109 @@ PlayFab.GenerateErrorReport = function (error) { return fullErrors; }; -PlayFab.MatchmakerApi = { +PlayFab.ProgressionApi = { ForgetAllCredentials: function () { PlayFab._internalSettings.sessionTicket = null; PlayFab._internalSettings.entityToken = null; }, - AuthUser: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/AuthUser", request, "X-SecretKey", callback, customData, extraHeaders); + CreateLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/CreateLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/CreateStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/DeleteLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteLeaderboardEntries: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/DeleteLeaderboardEntries", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/DeleteStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteStatistics: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/DeleteStatistics", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetFriendLeaderboardForEntity: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetFriendLeaderboardForEntity", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboard: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboard", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboardAroundEntity: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboardAroundEntity", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboardForEntities: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboardForEntities", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/GetStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetStatistics: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/GetStatistics", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetStatisticsForEntities: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/GetStatisticsForEntities", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + IncrementLeaderboardVersion: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/IncrementLeaderboardVersion", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + IncrementStatisticVersion: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/IncrementStatisticVersion", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ListLeaderboardDefinitions: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/ListLeaderboardDefinitions", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ListStatisticDefinitions: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/ListStatisticDefinitions", request, "X-EntityToken", callback, customData, extraHeaders); }, - PlayerJoined: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/PlayerJoined", request, "X-SecretKey", callback, customData, extraHeaders); + UnlinkAggregationSourceFromStatistic: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/UnlinkAggregationSourceFromStatistic", request, "X-EntityToken", callback, customData, extraHeaders); }, - PlayerLeft: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/PlayerLeft", request, "X-SecretKey", callback, customData, extraHeaders); + UnlinkLeaderboardFromStatistic: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/UnlinkLeaderboardFromStatistic", request, "X-EntityToken", callback, customData, extraHeaders); }, - StartGame: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/StartGame", request, "X-SecretKey", callback, customData, extraHeaders); + UpdateLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/UpdateLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); }, - UserInfo: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/UserInfo", request, "X-SecretKey", callback, customData, extraHeaders); + UpdateLeaderboardEntries: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/UpdateLeaderboardEntries", request, "X-EntityToken", callback, customData, extraHeaders); }, + + UpdateStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/UpdateStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UpdateStatistics: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/UpdateStatistics", request, "X-EntityToken", callback, customData, extraHeaders); + }, + }; -var PlayFabMatchmakerSDK = PlayFab.MatchmakerApi; +var PlayFabProgressionSDK = PlayFab.ProgressionApi; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabServerApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabServerApi.js index 4c7412b5..b57d0ebd 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabServerApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabServerApi.js @@ -6,15 +6,7 @@ if(!PlayFab.settings) { PlayFab.settings = { titleId: null, // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) developerSecretKey: null, // For security reasons you must never expose this value to the client or players - You must set this value for Server-APIs to work properly (Found in the Game Manager for your title, at the PlayFab Website) - advertisingIdType: null, - advertisingIdValue: null, GlobalHeaderInjection: null, - - // disableAdvertising is provided for completeness, but changing it is not suggested - // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly - disableAdvertising: false, - AD_TYPE_IDFA: "Idfa", - AD_TYPE_ANDROID_ID: "Adid", productionServerUrl: ".playfabapi.com" } } @@ -22,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.86.210511", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.86.210511" + sdk: "JavaScriptSDK-1.217.260605" }, sessionTicket: null, verticalName: null, // The name of a customer vertical. This is only for customers running a private cluster. Generally you shouldn't touch this @@ -231,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "jbuild_javascriptsdk_sdk-generic-3_0"; -PlayFab.sdkVersion = "1.86.210511"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -261,6 +253,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/AddGenericID", request, "X-SecretKey", callback, customData, extraHeaders); }, + AddOrUpdateContactEmail: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/AddOrUpdateContactEmail", request, "X-SecretKey", callback, customData, extraHeaders); + }, + AddPlayerTag: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/AddPlayerTag", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -301,6 +297,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/DeletePlayer", request, "X-SecretKey", callback, customData, extraHeaders); }, + DeletePlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/DeletePlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); + }, + DeletePushNotificationTemplate: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/DeletePushNotificationTemplate", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -309,10 +309,6 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/DeleteSharedGroup", request, "X-SecretKey", callback, customData, extraHeaders); }, - DeregisterGame: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/DeregisterGame", request, "X-SecretKey", callback, customData, extraHeaders); - }, - EvaluateRandomResultTable: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/EvaluateRandomResultTable", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -321,6 +317,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/ExecuteCloudScript", request, "X-SecretKey", callback, customData, extraHeaders); }, + ExportPlayersInSegment: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/ExportPlayersInSegment", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetAllSegments: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetAllSegments", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -389,6 +389,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayerCombinedInfo", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetPlayerCustomProperty: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayerCustomProperty", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetPlayerProfile: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayerProfile", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -397,10 +401,6 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayerSegments", request, "X-SecretKey", callback, customData, extraHeaders); }, - GetPlayersInSegment: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayersInSegment", request, "X-SecretKey", callback, customData, extraHeaders); - }, - GetPlayerStatistics: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayerStatistics", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -413,6 +413,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayerTags", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetPlayFabIDsFromBattleNetAccountIds: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromBattleNetAccountIds", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromFacebookIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromFacebookIDs", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -425,18 +429,42 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromGenericIDs", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetPlayFabIDsFromNintendoServiceAccountIds: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromNintendoServiceAccountIds", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromNintendoSwitchDeviceIds: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromNintendoSwitchDeviceIds", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetPlayFabIDsFromOpenIdSubjectIdentifiers: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromOpenIdSubjectIdentifiers", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromPSNAccountIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromPSNAccountIDs", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetPlayFabIDsFromPSNOnlineIDs: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromPSNOnlineIDs", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + GetPlayFabIDsFromServerCustomIDs: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromServerCustomIDs", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromSteamIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromSteamIDs", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetPlayFabIDsFromSteamNames: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromSteamNames", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + GetPlayFabIDsFromTwitchIDs: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromTwitchIDs", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetPlayFabIDsFromXboxLiveIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetPlayFabIDsFromXboxLiveIDs", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -449,6 +477,14 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetRandomResultTables", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetSegmentExport: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetSegmentExport", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + GetSegmentPlayerCount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetSegmentPlayerCount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetServerCustomIDsFromPlayFabIDs: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GetServerCustomIDsFromPlayFabIDs", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -529,18 +565,74 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/GrantItemsToUsers", request, "X-SecretKey", callback, customData, extraHeaders); }, + LinkBattleNetAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkBattleNetAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LinkNintendoServiceAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkNintendoServiceAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LinkNintendoServiceAccountSubject: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkNintendoServiceAccountSubject", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LinkNintendoSwitchDeviceId: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkNintendoSwitchDeviceId", request, "X-SecretKey", callback, customData, extraHeaders); + }, + LinkPSNAccount: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkPSNAccount", request, "X-SecretKey", callback, customData, extraHeaders); }, + LinkPSNId: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkPSNId", request, "X-SecretKey", callback, customData, extraHeaders); + }, + LinkServerCustomId: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkServerCustomId", request, "X-SecretKey", callback, customData, extraHeaders); }, + LinkSteamId: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkSteamId", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LinkTwitchAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkTwitchAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + LinkXboxAccount: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkXboxAccount", request, "X-SecretKey", callback, customData, extraHeaders); }, + LinkXboxId: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LinkXboxId", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + ListPlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/ListPlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LoginWithAndroidDeviceID: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithAndroidDeviceID", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LoginWithBattleNet: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithBattleNet", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LoginWithCustomID: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithCustomID", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LoginWithIOSDeviceID: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithIOSDeviceID", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + LoginWithPSN: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithPSN", request, "X-SecretKey", callback, customData, extraHeaders); + }, + LoginWithServerCustomId: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithServerCustomId", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -549,6 +641,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithSteamId", request, "X-SecretKey", callback, customData, extraHeaders); }, + LoginWithTwitch: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithTwitch", request, "X-SecretKey", callback, customData, extraHeaders); + }, + LoginWithXbox: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/LoginWithXbox", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -573,26 +669,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/MoveItemToUserFromCharacter", request, "X-SecretKey", callback, customData, extraHeaders); }, - NotifyMatchmakerPlayerLeft: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/NotifyMatchmakerPlayerLeft", request, "X-SecretKey", callback, customData, extraHeaders); - }, - RedeemCoupon: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/RedeemCoupon", request, "X-SecretKey", callback, customData, extraHeaders); }, - RedeemMatchmakerTicket: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/RedeemMatchmakerTicket", request, "X-SecretKey", callback, customData, extraHeaders); - }, - - RefreshGameServerInstanceHeartbeat: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/RefreshGameServerInstanceHeartbeat", request, "X-SecretKey", callback, customData, extraHeaders); - }, - - RegisterGame: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/RegisterGame", request, "X-SecretKey", callback, customData, extraHeaders); - }, - RemoveFriend: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/RemoveFriend", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -653,18 +733,6 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/SetFriendTags", request, "X-SecretKey", callback, customData, extraHeaders); }, - SetGameServerInstanceData: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/SetGameServerInstanceData", request, "X-SecretKey", callback, customData, extraHeaders); - }, - - SetGameServerInstanceState: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/SetGameServerInstanceState", request, "X-SecretKey", callback, customData, extraHeaders); - }, - - SetGameServerInstanceTags: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/SetGameServerInstanceTags", request, "X-SecretKey", callback, customData, extraHeaders); - }, - SetPlayerSecret: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/SetPlayerSecret", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -689,6 +757,34 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/SubtractUserVirtualCurrency", request, "X-SecretKey", callback, customData, extraHeaders); }, + UnlinkApple: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkApple", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + UnlinkBattleNetAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkBattleNetAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + UnlinkFacebookAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkFacebookAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + UnlinkFacebookInstantGamesId: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkFacebookInstantGamesId", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + UnlinkGameCenterAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkGameCenterAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + UnlinkNintendoServiceAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkNintendoServiceAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + UnlinkNintendoSwitchDeviceId: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkNintendoSwitchDeviceId", request, "X-SecretKey", callback, customData, extraHeaders); + }, + UnlinkPSNAccount: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkPSNAccount", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -697,6 +793,14 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkServerCustomId", request, "X-SecretKey", callback, customData, extraHeaders); }, + UnlinkSteamId: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkSteamId", request, "X-SecretKey", callback, customData, extraHeaders); + }, + + UnlinkTwitchAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkTwitchAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + UnlinkXboxAccount: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkXboxAccount", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -733,6 +837,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UpdateCharacterStatistics", request, "X-SecretKey", callback, customData, extraHeaders); }, + UpdatePlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UpdatePlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); + }, + UpdatePlayerStatistics: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UpdatePlayerStatistics", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -780,6 +888,7 @@ PlayFab.ServerApi = { WriteTitleEvent: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/WriteTitleEvent", request, "X-SecretKey", callback, customData, extraHeaders); }, + }; var PlayFabServerSDK = PlayFab.ServerApi; diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFab.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFab.d.ts index 16df5f6f..441d70ef 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFab.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFab.d.ts @@ -1,28 +1,25 @@ /// /// -/// /// /// /// /// +/// /// /// /// /// +/// /// /// /// +/// declare module PlayFabModule { export interface ISettings { titleId: string; developerSecretKey: string; GlobalHeaderInjection?: { [key: string]: string }; - advertisingIdType: string; - advertisingIdValue: string; - disableAdvertising: boolean; - AD_TYPE_IDFA: string; - AD_TYPE_ANDROID_ID: string; productionServerUrl: string; } export interface IPlayFabRequestCommon { } @@ -35,6 +32,7 @@ declare module PlayFabModule { errorDetails?: { [key: string]: string[] }; request?: any; customData?: any; + retryAfterSeconds?: number; } export interface SuccessContainer extends IPlayFabError { data: TResult; @@ -51,33 +49,37 @@ declare var PlayFab: { settings: PlayFabModule.ISettings; AdminApi: PlayFabAdminModule.IPlayFabAdmin; ClientApi: PlayFabClientModule.IPlayFabClient; - MatchmakerApi: PlayFabMatchmakerModule.IPlayFabMatchmaker; ServerApi: PlayFabServerModule.IPlayFabServer; AuthenticationApi: PlayFabAuthenticationModule.IPlayFabAuthentication; CloudScriptApi: PlayFabCloudScriptModule.IPlayFabCloudScript; DataApi: PlayFabDataModule.IPlayFabData; + EconomyApi: PlayFabEconomyModule.IPlayFabEconomy; EventsApi: PlayFabEventsModule.IPlayFabEvents; ExperimentationApi: PlayFabExperimentationModule.IPlayFabExperimentation; InsightsApi: PlayFabInsightsModule.IPlayFabInsights; GroupsApi: PlayFabGroupsModule.IPlayFabGroups; + ProgressionApi: PlayFabProgressionModule.IPlayFabProgression; LocalizationApi: PlayFabLocalizationModule.IPlayFabLocalization; MultiplayerApi: PlayFabMultiplayerModule.IPlayFabMultiplayer; ProfilesApi: PlayFabProfilesModule.IPlayFabProfiles; + AddonApi: PlayFabAddonModule.IPlayFabAddon; }; // Continue to support older usage declare var PlayFabAdminSDK: PlayFabAdminModule.IPlayFabAdmin; declare var PlayFabClientSDK: PlayFabClientModule.IPlayFabClient; -declare var PlayFabMatchmakerSDK: PlayFabMatchmakerModule.IPlayFabMatchmaker; declare var PlayFabServerSDK: PlayFabServerModule.IPlayFabServer; declare var PlayFabAuthenticationSDK: PlayFabAuthenticationModule.IPlayFabAuthentication; declare var PlayFabCloudScriptSDK: PlayFabCloudScriptModule.IPlayFabCloudScript; declare var PlayFabDataSDK: PlayFabDataModule.IPlayFabData; +declare var PlayFabEconomySDK: PlayFabEconomyModule.IPlayFabEconomy; declare var PlayFabEventsSDK: PlayFabEventsModule.IPlayFabEvents; declare var PlayFabExperimentationSDK: PlayFabExperimentationModule.IPlayFabExperimentation; declare var PlayFabInsightsSDK: PlayFabInsightsModule.IPlayFabInsights; declare var PlayFabGroupsSDK: PlayFabGroupsModule.IPlayFabGroups; +declare var PlayFabProgressionSDK: PlayFabProgressionModule.IPlayFabProgression; declare var PlayFabLocalizationSDK: PlayFabLocalizationModule.IPlayFabLocalization; declare var PlayFabMultiplayerSDK: PlayFabMultiplayerModule.IPlayFabMultiplayer; declare var PlayFabProfilesSDK: PlayFabProfilesModule.IPlayFabProfiles; +declare var PlayFabAddonSDK: PlayFabAddonModule.IPlayFabAddon; diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabAddonApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabAddonApi.d.ts new file mode 100644 index 00000000..0abfa783 --- /dev/null +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabAddonApi.d.ts @@ -0,0 +1,739 @@ +/// + +declare module PlayFabAddonModule { + export interface IPlayFabAddon { + ForgetAllCredentials(): void; + + /** + * Creates the Apple addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdateapple + */ + CreateOrUpdateApple(request: PlayFabAddonModels.CreateOrUpdateAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the Facebook addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatefacebook + */ + CreateOrUpdateFacebook(request: PlayFabAddonModels.CreateOrUpdateFacebookRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the Facebook Instant Games addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatefacebookinstantgames + */ + CreateOrUpdateFacebookInstantGames(request: PlayFabAddonModels.CreateOrUpdateFacebookInstantGamesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the Google addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdategoogle + */ + CreateOrUpdateGoogle(request: PlayFabAddonModels.CreateOrUpdateGoogleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the Kongregate addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatekongregate + */ + CreateOrUpdateKongregate(request: PlayFabAddonModels.CreateOrUpdateKongregateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the Nintendo addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatenintendo + */ + CreateOrUpdateNintendo(request: PlayFabAddonModels.CreateOrUpdateNintendoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the PSN addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatepsn + */ + CreateOrUpdatePSN(request: PlayFabAddonModels.CreateOrUpdatePSNRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the Steam addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatesteam + */ + CreateOrUpdateSteam(request: PlayFabAddonModels.CreateOrUpdateSteamRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the ToxMod addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatetoxmod + */ + CreateOrUpdateToxMod(request: PlayFabAddonModels.CreateOrUpdateToxModRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates the Twitch addon on a title, or updates it if it already exists. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/createorupdatetwitch + */ + CreateOrUpdateTwitch(request: PlayFabAddonModels.CreateOrUpdateTwitchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Apple addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deleteapple + */ + DeleteApple(request: PlayFabAddonModels.DeleteAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Facebook addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletefacebook + */ + DeleteFacebook(request: PlayFabAddonModels.DeleteFacebookRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Facebook addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletefacebookinstantgames + */ + DeleteFacebookInstantGames(request: PlayFabAddonModels.DeleteFacebookInstantGamesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Google addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletegoogle + */ + DeleteGoogle(request: PlayFabAddonModels.DeleteGoogleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Kongregate addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletekongregate + */ + DeleteKongregate(request: PlayFabAddonModels.DeleteKongregateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Nintendo addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletenintendo + */ + DeleteNintendo(request: PlayFabAddonModels.DeleteNintendoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the PSN addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletepsn + */ + DeletePSN(request: PlayFabAddonModels.DeletePSNRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Steam addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletesteam + */ + DeleteSteam(request: PlayFabAddonModels.DeleteSteamRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the ToxMod addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletetoxmod + */ + DeleteToxMod(request: PlayFabAddonModels.DeleteToxModRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the Twitch addon on a title. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/deletetwitch + */ + DeleteTwitch(request: PlayFabAddonModels.DeleteTwitchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Apple addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getapple + */ + GetApple(request: PlayFabAddonModels.GetAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Facebook addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getfacebook + */ + GetFacebook(request: PlayFabAddonModels.GetFacebookRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Facebook Instant Games addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getfacebookinstantgames + */ + GetFacebookInstantGames(request: PlayFabAddonModels.GetFacebookInstantGamesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Google addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getgoogle + */ + GetGoogle(request: PlayFabAddonModels.GetGoogleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Kongregate addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getkongregate + */ + GetKongregate(request: PlayFabAddonModels.GetKongregateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Nintendo addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getnintendo + */ + GetNintendo(request: PlayFabAddonModels.GetNintendoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the PSN addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getpsn + */ + GetPSN(request: PlayFabAddonModels.GetPSNRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Steam addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/getsteam + */ + GetSteam(request: PlayFabAddonModels.GetSteamRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the ToxMod addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/gettoxmod + */ + GetToxMod(request: PlayFabAddonModels.GetToxModRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information of the Twitch addon on a title, omits secrets. + * https://docs.microsoft.com/rest/api/playfab/addon/addon/gettwitch + */ + GetTwitch(request: PlayFabAddonModels.GetTwitchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + + } +} + +declare module PlayFabAddonModels { + export interface CreateOrUpdateAppleRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Allow validation of receipts from the Apple production environment. Required for app releases. */ + AllowProduction?: boolean; + /** Allow validation of receipts from the Apple sandbox environment. Typically used while testing. */ + AllowSandbox?: boolean; + /** iOS App Bundle ID obtained after setting up your app in the App Store. */ + AppBundleId: string; + /** AppId obtained after setting up your app in the App Store. */ + AppId?: string; + /** iOS App Shared Secret obtained after setting up your app in the App Store. */ + AppSharedSecret?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + /** + * Ignore expiration date for identity tokens. Be aware that when set to true this can invalidate expired tokens in the + * case where Apple rotates their signing keys. + */ + IgnoreExpirationDate?: boolean; + /** IssuerId obtained after setting up your app in the App Store. */ + IssuerId?: string; + /** KeyId obtained after setting up your app in the App Store. */ + KeyId?: string; + /** PrivateKey obtained after setting up your app in the App Store. */ + PrivateKey?: string; + /** Require secure authentication only for this app. */ + RequireSecureAuthentication?: boolean; + + } + + export interface CreateOrUpdateAppleResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateFacebookInstantGamesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Facebook App ID obtained after setting up your app in Facebook Instant Games. */ + AppID: string; + /** Facebook App Secret obtained after setting up your app in Facebook Instant Games. */ + AppSecret: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + + } + + export interface CreateOrUpdateFacebookInstantGamesResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateFacebookRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Facebook App ID obtained after setting up your app in Facebook. */ + AppID: string; + /** Facebook App Secret obtained after setting up your app in Facebook. */ + AppSecret: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + /** Email address for purchase dispute notifications. */ + NotificationEmail: string; + + } + + export interface CreateOrUpdateFacebookResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateGoogleRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Google App License Key obtained after setting up your app in the Google Play developer portal. Required if using Google + * receipt validation. + */ + AppLicenseKey?: string; + /** + * Google App Package ID obtained after setting up your app in the Google Play developer portal. Required if using Google + * receipt validation. + */ + AppPackageID?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + /** + * Google OAuth Client ID obtained through the Google Developer Console by creating a new set of "OAuth Client ID". + * Required if using Google Authentication. + */ + OAuthClientID?: string; + /** + * Google OAuth Client Secret obtained through the Google Developer Console by creating a new set of "OAuth Client ID". + * Required if using Google Authentication. + */ + OAuthClientSecret?: string; + /** + * Authorized Redirect Uri obtained through the Google Developer Console. This currently defaults to + * https://oauth.playfab.com/oauth2/google. If you are authenticating players via browser, please update this to your own + * domain. + */ + OAuthCustomRedirectUri?: string; + /** Needed to enable pending purchase handling and subscription processing. */ + ServiceAccountKey?: string; + + } + + export interface CreateOrUpdateGoogleResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateKongregateRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + /** Kongregate Secret API Key obtained after setting up your game in your Kongregate developer account. */ + SecretAPIKey: string; + + } + + export interface CreateOrUpdateKongregateResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateNintendoRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Nintendo Switch Application ID, without the "0x" prefix. */ + ApplicationID?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** List of Nintendo Environments, currently supporting up to 4. Needs Catalog enabled. */ + Environments?: NintendoEnvironment[]; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + /** List of Nintendo Subscription Environments, currently supporting up to 4. Needs Catalog enabled. */ + SubscriptionEnvironments?: NintendoEnvironment[]; + + } + + export interface CreateOrUpdateNintendoResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdatePSNRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Client ID obtained after setting up your game with Sony. This one is associated with the existing PS4 marketplace. */ + ClientID?: string; + /** Client secret obtained after setting up your game with Sony. This one is associated with the existing PS4 marketplace. */ + ClientSecret?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + /** + * Client ID obtained after setting up your game with Sony. This one is associated with the modern marketplace, which + * includes PS5, cross-generation for PS4, and unified entitlements. + */ + NextGenClientID?: string; + /** + * Client secret obtained after setting up your game with Sony. This one is associated with the modern marketplace, which + * includes PS5, cross-generation for PS4, and unified entitlements. + */ + NextGenClientSecret?: string; + + } + + export interface CreateOrUpdatePSNResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateSteamRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Application ID obtained after setting up your app in Valve's developer portal. */ + ApplicationId: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Enforce usage of AzurePlayFab identity in user authentication tickets. */ + EnforceServiceSpecificTickets?: boolean; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + /** Sercet Key obtained after setting up your app in Valve's developer portal. */ + SecretKey: string; + /** Use Steam Payments sandbox endpoint for test transactions. */ + UseSandbox?: boolean; + + } + + export interface CreateOrUpdateSteamResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateToxModRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Account ID obtained after creating your ToxMod developer account. */ + AccountId: string; + /** Account Key obtained after creating your ToxMod developer account. */ + AccountKey: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Whether ToxMod Addon is Enabled by Title. */ + Enabled: boolean; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + + } + + export interface CreateOrUpdateToxModResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface CreateOrUpdateTwitchRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Client ID obtained after creating your Twitch developer account. */ + ClientID?: string; + /** Client Secret obtained after creating your Twitch developer account. */ + ClientSecret?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** If an error should be returned if the addon already exists. */ + ErrorIfExists?: boolean; + + } + + export interface CreateOrUpdateTwitchResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteAppleRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteAppleResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteFacebookInstantGamesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteFacebookInstantGamesResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteFacebookRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteFacebookResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteGoogleRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteGoogleResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteKongregateRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteKongregateResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteNintendoRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteNintendoResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeletePSNRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeletePSNResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteSteamRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteSteamResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteToxModRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteToxModResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteTwitchRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface DeleteTwitchResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface EntityKey { + /** Unique ID of the entity. */ + Id: string; + /** Entity type. See https://docs.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types */ + Type?: string; + + } + + export interface GetAppleRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetAppleResponse extends PlayFabModule.IPlayFabResultCommon { + /** iOS App Bundle ID obtained after setting up your app in the App Store. */ + AppBundleId?: string; + /** Addon status. */ + Created: boolean; + /** Ignore expiration date for identity tokens. */ + IgnoreExpirationDate?: boolean; + /** Require secure authentication only for this app. */ + RequireSecureAuthentication?: boolean; + + } + + export interface GetFacebookInstantGamesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetFacebookInstantGamesResponse extends PlayFabModule.IPlayFabResultCommon { + /** Facebook App ID obtained after setting up your app in Facebook Instant Games. */ + AppID?: string; + /** Addon status. */ + Created: boolean; + + } + + export interface GetFacebookRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetFacebookResponse extends PlayFabModule.IPlayFabResultCommon { + /** Facebook App ID obtained after setting up your app in Facebook. */ + AppID?: string; + /** Addon status. */ + Created: boolean; + /** Email address for purchase dispute notifications. */ + NotificationEmail?: string; + + } + + export interface GetGoogleRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetGoogleResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * Google App Package ID obtained after setting up your app in the Google Play developer portal. Required if using Google + * receipt validation. + */ + AppPackageID?: string; + /** Addon status. */ + Created: boolean; + /** + * Google OAuth Client ID obtained through the Google Developer Console by creating a new set of "OAuth Client ID". + * Required if using Google Authentication. + */ + OAuthClientID?: string; + /** + * Authorized Redirect Uri obtained through the Google Developer Console. This currently defaults to + * https://oauth.playfab.com/oauth2/google. If you are authenticating players via browser, please update this to your own + * domain. + */ + OauthCustomRedirectUri?: string; + + } + + export interface GetKongregateRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetKongregateResponse extends PlayFabModule.IPlayFabResultCommon { + /** Addon status. */ + Created: boolean; + + } + + export interface GetNintendoRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetNintendoResponse extends PlayFabModule.IPlayFabResultCommon { + /** Nintendo Switch Application ID, without the "0x" prefix. */ + ApplicationID?: string; + /** Addon status. */ + Created: boolean; + /** List of Nintendo Environments, currently supporting up to 4. */ + Environments?: NintendoEnvironment[]; + /** List of Nintendo Subscription Environments associated to a secondary AppId, currently supporting up to 4. */ + SecondarySubscriptionEnvironments?: NintendoEnvironment[]; + /** List of Nintendo Subscription Environments, currently supporting up to 4. */ + SubscriptionEnvironments?: NintendoEnvironment[]; + + } + + export interface GetPSNRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetPSNResponse extends PlayFabModule.IPlayFabResultCommon { + /** Client ID obtained after setting up your game with Sony. This one is associated with the existing PS4 marketplace. */ + ClientID?: string; + /** Addon status. */ + Created: boolean; + /** + * Client ID obtained after setting up your game with Sony. This one is associated with the modern marketplace, which + * includes PS5, cross-generation for PS4, and unified entitlements. + */ + NextGenClientID?: string; + + } + + export interface GetSteamRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetSteamResponse extends PlayFabModule.IPlayFabResultCommon { + /** Application ID obtained after setting up your game in Valve's developer portal. */ + ApplicationId?: string; + /** Addon status. */ + Created: boolean; + /** Enforce usage of AzurePlayFab identity in user authentication tickets. */ + EnforceServiceSpecificTickets?: boolean; + /** Use Steam Payments sandbox endpoint for test transactions. */ + UseSandbox?: boolean; + + } + + export interface GetToxModRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetToxModResponse extends PlayFabModule.IPlayFabResultCommon { + /** Account ID obtained after creating your Twitch developer account. */ + AccountId?: string; + /** Account Key obtained after creating your Twitch developer account. */ + AccountKey?: string; + /** Addon status. */ + Created: boolean; + /** Whether the ToxMod Addon is enabled by the title. */ + Enabled: boolean; + + } + + export interface GetTwitchRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface GetTwitchResponse extends PlayFabModule.IPlayFabResultCommon { + /** Client ID obtained after creating your Twitch developer account. */ + ClientID?: string; + /** Addon status. */ + Created: boolean; + + } + + export interface NintendoEnvironment { + /** Client ID for the Nintendo Environment. */ + ClientID?: string; + /** Client Secret for the Nintendo Environment. */ + ClientSecret?: string; + /** ID for the Nintendo Environment. */ + ID?: string; + + } + + +} diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabAdminApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabAdminApi.d.ts index 7d66dc50..8a96312d 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabAdminApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabAdminApi.d.ts @@ -8,610 +8,640 @@ declare module PlayFabAdminModule { * Abort an ongoing task instance. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/aborttaskinstance */ - AbortTaskInstance(request: PlayFabAdminModels.AbortTaskInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AbortTaskInstance(request: PlayFabAdminModels.AbortTaskInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Update news item to include localized version * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/addlocalizednews */ - AddLocalizedNews(request: PlayFabAdminModels.AddLocalizedNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddLocalizedNews(request: PlayFabAdminModels.AddLocalizedNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds a new news item to the title's news feed * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/addnews */ - AddNews(request: PlayFabAdminModels.AddNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddNews(request: PlayFabAdminModels.AddNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds a given tag to a player profile. The tag's namespace is automatically generated based on the source of the tag. * https://docs.microsoft.com/rest/api/playfab/admin/playstream/addplayertag */ - AddPlayerTag(request: PlayFabAdminModels.AddPlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddPlayerTag(request: PlayFabAdminModels.AddPlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds the game server executable specified (previously uploaded - see GetServerBuildUploadUrl) to the set of those a - * client is permitted to request in a call to StartGame - * https://docs.microsoft.com/rest/api/playfab/admin/custom-server-management/addserverbuild - */ - AddServerBuild(request: PlayFabAdminModels.AddServerBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Increments the specified virtual currency by the stated amount + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Increments the specified virtual currency by the stated amount * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/adduservirtualcurrency */ - AddUserVirtualCurrency(request: PlayFabAdminModels.AddUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddUserVirtualCurrency(request: PlayFabAdminModels.AddUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds one or more virtual currencies to the set defined for the title. Virtual Currencies have a maximum value of - * 2,147,483,647 when granted to a player. Any value over that will be discarded. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Adds one or more virtual currencies to the set defined for the title. Virtual Currencies have a maximum + * value of 2,147,483,647 when granted to a player. Any value over that will be discarded. * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/addvirtualcurrencytypes */ - AddVirtualCurrencyTypes(request: PlayFabAdminModels.AddVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddVirtualCurrencyTypes(request: PlayFabAdminModels.AddVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Bans users by PlayFab ID with optional IP address, or MAC address for the provided game. + * Bans users by PlayFab ID with optional IP address for the provided game. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/banusers */ - BanUsers(request: PlayFabAdminModels.BanUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + BanUsers(request: PlayFabAdminModels.BanUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Checks the global count for the limited edition item. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Checks the global count for the limited edition item. * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/checklimitededitionitemavailability */ - CheckLimitedEditionItemAvailability(request: PlayFabAdminModels.CheckLimitedEditionItemAvailabilityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CheckLimitedEditionItemAvailability(request: PlayFabAdminModels.CheckLimitedEditionItemAvailabilityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Create an ActionsOnPlayersInSegment task, which iterates through all players in a segment to execute action. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/createactionsonplayersinsegmenttask */ - CreateActionsOnPlayersInSegmentTask(request: PlayFabAdminModels.CreateActionsOnPlayerSegmentTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateActionsOnPlayersInSegmentTask(request: PlayFabAdminModels.CreateActionsOnPlayerSegmentTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Create a CloudScript task, which can run a CloudScript on a schedule. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/createcloudscripttask */ - CreateCloudScriptTask(request: PlayFabAdminModels.CreateCloudScriptTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateCloudScriptTask(request: PlayFabAdminModels.CreateCloudScriptTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Create a Insights Scheduled Scaling task, which can scale Insights Performance Units on a schedule * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/createinsightsscheduledscalingtask */ - CreateInsightsScheduledScalingTask(request: PlayFabAdminModels.CreateInsightsScheduledScalingTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateInsightsScheduledScalingTask(request: PlayFabAdminModels.CreateInsightsScheduledScalingTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Registers a relationship between a title and an Open ID Connect provider. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/createopenidconnection */ - CreateOpenIdConnection(request: PlayFabAdminModels.CreateOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateOpenIdConnection(request: PlayFabAdminModels.CreateOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a new Player Shared Secret Key. It may take up to 5 minutes for this key to become generally available after * this API returns. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/createplayersharedsecret */ - CreatePlayerSharedSecret(request: PlayFabAdminModels.CreatePlayerSharedSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreatePlayerSharedSecret(request: PlayFabAdminModels.CreatePlayerSharedSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds a new player statistic configuration to the title, optionally allowing the developer to specify a reset interval * and an aggregation method. * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/createplayerstatisticdefinition */ - CreatePlayerStatisticDefinition(request: PlayFabAdminModels.CreatePlayerStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreatePlayerStatisticDefinition(request: PlayFabAdminModels.CreatePlayerStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a new player segment by defining the conditions on player properties. Also, create actions to target the player * segments for a title. * https://docs.microsoft.com/rest/api/playfab/admin/segments/createsegment */ - CreateSegment(request: PlayFabAdminModels.CreateSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateSegment(request: PlayFabAdminModels.CreateSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Delete a content file from the title. When deleting a file that does not exist, it returns success. * https://docs.microsoft.com/rest/api/playfab/admin/content/deletecontent */ - DeleteContent(request: PlayFabAdminModels.DeleteContentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteContent(request: PlayFabAdminModels.DeleteContentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes a master player account entirely from all titles and deletes all associated data * https://docs.microsoft.com/rest/api/playfab/admin/account-management/deletemasterplayeraccount */ - DeleteMasterPlayerAccount(request: PlayFabAdminModels.DeleteMasterPlayerAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteMasterPlayerAccount(request: PlayFabAdminModels.DeleteMasterPlayerAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes PlayStream and telemetry event data associated with the master player account from PlayFab storage + * https://docs.microsoft.com/rest/api/playfab/admin/account-management/deletemasterplayereventdata + */ + DeleteMasterPlayerEventData(request: PlayFabAdminModels.DeleteMasterPlayerEventDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes a player's subscription + * https://docs.microsoft.com/rest/api/playfab/admin/account-management/deletemembershipsubscription + */ + DeleteMembershipSubscription(request: PlayFabAdminModels.DeleteMembershipSubscriptionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes a relationship between a title and an OpenID Connect provider. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/deleteopenidconnection */ - DeleteOpenIdConnection(request: PlayFabAdminModels.DeleteOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteOpenIdConnection(request: PlayFabAdminModels.DeleteOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes a user's player account from a title and deletes all associated data * https://docs.microsoft.com/rest/api/playfab/admin/account-management/deleteplayer */ - DeletePlayer(request: PlayFabAdminModels.DeletePlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeletePlayer(request: PlayFabAdminModels.DeletePlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes title-specific custom properties for a player + * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/deleteplayercustomproperties + */ + DeletePlayerCustomProperties(request: PlayFabAdminModels.DeletePlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes an existing Player Shared Secret Key. It may take up to 5 minutes for this delete to be reflected after this API * returns. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/deleteplayersharedsecret */ - DeletePlayerSharedSecret(request: PlayFabAdminModels.DeletePlayerSharedSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeletePlayerSharedSecret(request: PlayFabAdminModels.DeletePlayerSharedSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes an existing player segment and its associated action(s) for a title. * https://docs.microsoft.com/rest/api/playfab/admin/segments/deletesegment */ - DeleteSegment(request: PlayFabAdminModels.DeleteSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteSegment(request: PlayFabAdminModels.DeleteSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Deletes an existing virtual item store + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Deletes an existing virtual item store * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/deletestore */ - DeleteStore(request: PlayFabAdminModels.DeleteStoreRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteStore(request: PlayFabAdminModels.DeleteStoreRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Delete a task. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/deletetask */ - DeleteTask(request: PlayFabAdminModels.DeleteTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteTask(request: PlayFabAdminModels.DeleteTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Permanently deletes a title and all associated configuration * https://docs.microsoft.com/rest/api/playfab/admin/account-management/deletetitle */ - DeleteTitle(request: PlayFabAdminModels.DeleteTitleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteTitle(request: PlayFabAdminModels.DeleteTitleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a specified set of title data overrides. * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/deletetitledataoverride */ - DeleteTitleDataOverride(request: PlayFabAdminModels.DeleteTitleDataOverrideRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteTitleDataOverride(request: PlayFabAdminModels.DeleteTitleDataOverrideRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Exports all associated data of a master player account * https://docs.microsoft.com/rest/api/playfab/admin/account-management/exportmasterplayerdata */ - ExportMasterPlayerData(request: PlayFabAdminModels.ExportMasterPlayerDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ExportMasterPlayerData(request: PlayFabAdminModels.ExportMasterPlayerDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Starts an export for the player profiles in a segment. This API creates a snapshot of all the player profiles which + * match the segment definition at the time of the API call. Profiles which change while an export is in progress will not + * be reflected in the results. + * https://docs.microsoft.com/rest/api/playfab/admin/playstream/exportplayersinsegment + */ + ExportPlayersInSegment(request: PlayFabAdminModels.ExportPlayersInSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get information about a ActionsOnPlayersInSegment task instance. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/getactionsonplayersinsegmenttaskinstance */ - GetActionsOnPlayersInSegmentTaskInstance(request: PlayFabAdminModels.GetTaskInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetActionsOnPlayersInSegmentTaskInstance(request: PlayFabAdminModels.GetTaskInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves an array of player segment definitions. Results from this can be used in subsequent API calls such as - * GetPlayersInSegment which requires a Segment ID. While segment names can change the ID for that segment will not change. + * ExportPlayersInSegment which requires a Segment ID. While segment names can change the ID for that segment will not + * change. * https://docs.microsoft.com/rest/api/playfab/admin/playstream/getallsegments */ - GetAllSegments(request: PlayFabAdminModels.GetAllSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetAllSegments(request: PlayFabAdminModels.GetAllSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the specified version of the title's catalog of virtual goods, including all defined properties + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the specified version of the title's catalog of virtual goods, including all defined properties * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/getcatalogitems */ - GetCatalogItems(request: PlayFabAdminModels.GetCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCatalogItems(request: PlayFabAdminModels.GetCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the contents and information of a specific Cloud Script revision. * https://docs.microsoft.com/rest/api/playfab/admin/server-side-cloud-script/getcloudscriptrevision */ - GetCloudScriptRevision(request: PlayFabAdminModels.GetCloudScriptRevisionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCloudScriptRevision(request: PlayFabAdminModels.GetCloudScriptRevisionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get detail information about a CloudScript task instance. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/getcloudscripttaskinstance */ - GetCloudScriptTaskInstance(request: PlayFabAdminModels.GetTaskInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCloudScriptTaskInstance(request: PlayFabAdminModels.GetTaskInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all the current cloud script versions. For each version, information about the current published and latest * revisions is also listed. * https://docs.microsoft.com/rest/api/playfab/admin/server-side-cloud-script/getcloudscriptversions */ - GetCloudScriptVersions(request: PlayFabAdminModels.GetCloudScriptVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCloudScriptVersions(request: PlayFabAdminModels.GetCloudScriptVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * List all contents of the title and get statistics such as size * https://docs.microsoft.com/rest/api/playfab/admin/content/getcontentlist */ - GetContentList(request: PlayFabAdminModels.GetContentListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetContentList(request: PlayFabAdminModels.GetContentListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the pre-signed URL for uploading a content file. A subsequent HTTP PUT to the returned URL uploads the * content. Also, please be aware that the Content service is specifically PlayFab's CDN offering, for which standard CDN * rates apply. * https://docs.microsoft.com/rest/api/playfab/admin/content/getcontentuploadurl */ - GetContentUploadUrl(request: PlayFabAdminModels.GetContentUploadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetContentUploadUrl(request: PlayFabAdminModels.GetContentUploadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a download URL for the requested report * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getdatareport */ - GetDataReport(request: PlayFabAdminModels.GetDataReportRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Retrieves the details for a specific completed session, including links to standard out and standard error logs - * https://docs.microsoft.com/rest/api/playfab/admin/matchmaking/getmatchmakergameinfo - */ - GetMatchmakerGameInfo(request: PlayFabAdminModels.GetMatchmakerGameInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Retrieves the details of defined game modes for the specified game server executable - * https://docs.microsoft.com/rest/api/playfab/admin/matchmaking/getmatchmakergamemodes - */ - GetMatchmakerGameModes(request: PlayFabAdminModels.GetMatchmakerGameModesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetDataReport(request: PlayFabAdminModels.GetDataReportRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get the list of titles that the player has played * https://docs.microsoft.com/rest/api/playfab/admin/account-management/getplayedtitlelist */ - GetPlayedTitleList(request: PlayFabAdminModels.GetPlayedTitleListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayedTitleList(request: PlayFabAdminModels.GetPlayedTitleListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves a title-specific custom property value for a player. + * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getplayercustomproperty + */ + GetPlayerCustomProperty(request: PlayFabAdminModels.GetPlayerCustomPropertyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets a player's ID from an auth token. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/getplayeridfromauthtoken */ - GetPlayerIdFromAuthToken(request: PlayFabAdminModels.GetPlayerIdFromAuthTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerIdFromAuthToken(request: PlayFabAdminModels.GetPlayerIdFromAuthTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the player's profile * https://docs.microsoft.com/rest/api/playfab/admin/account-management/getplayerprofile */ - GetPlayerProfile(request: PlayFabAdminModels.GetPlayerProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerProfile(request: PlayFabAdminModels.GetPlayerProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * List all segments that a player currently belongs to at this moment in time. * https://docs.microsoft.com/rest/api/playfab/admin/playstream/getplayersegments */ - GetPlayerSegments(request: PlayFabAdminModels.GetPlayersSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerSegments(request: PlayFabAdminModels.GetPlayersSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Returns all Player Shared Secret Keys including disabled and expired. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/getplayersharedsecrets */ - GetPlayerSharedSecrets(request: PlayFabAdminModels.GetPlayerSharedSecretsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Allows for paging through all players in a given segment. This API creates a snapshot of all player profiles that match - * the segment definition at the time of its creation and lives through the Total Seconds to Live, refreshing its life span - * on each subsequent use of the Continuation Token. Profiles that change during the course of paging will not be reflected - * in the results. AB Test segments are currently not supported by this operation. NOTE: This API is limited to being - * called 30 times in one minute. You will be returned an error if you exceed this threshold. - * https://docs.microsoft.com/rest/api/playfab/admin/playstream/getplayersinsegment - */ - GetPlayersInSegment(request: PlayFabAdminModels.GetPlayersInSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerSharedSecrets(request: PlayFabAdminModels.GetPlayerSharedSecretsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the configuration information for all player statistics defined in the title, regardless of whether they have * a reset interval. * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getplayerstatisticdefinitions */ - GetPlayerStatisticDefinitions(request: PlayFabAdminModels.GetPlayerStatisticDefinitionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerStatisticDefinitions(request: PlayFabAdminModels.GetPlayerStatisticDefinitionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the information on the available versions of the specified statistic. * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getplayerstatisticversions */ - GetPlayerStatisticVersions(request: PlayFabAdminModels.GetPlayerStatisticVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerStatisticVersions(request: PlayFabAdminModels.GetPlayerStatisticVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get all tags with a given Namespace (optional) from a player profile. * https://docs.microsoft.com/rest/api/playfab/admin/playstream/getplayertags */ - GetPlayerTags(request: PlayFabAdminModels.GetPlayerTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerTags(request: PlayFabAdminModels.GetPlayerTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the requested policy. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/getpolicy */ - GetPolicy(request: PlayFabAdminModels.GetPolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPolicy(request: PlayFabAdminModels.GetPolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom publisher settings * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/getpublisherdata */ - GetPublisherData(request: PlayFabAdminModels.GetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPublisherData(request: PlayFabAdminModels.GetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the random drop table configuration for the title + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the random drop table configuration for the title * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/getrandomresulttables */ - GetRandomResultTables(request: PlayFabAdminModels.GetRandomResultTablesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetRandomResultTables(request: PlayFabAdminModels.GetRandomResultTablesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Get detail information of a segment and its associated definition(s) and action(s) for a title. - * https://docs.microsoft.com/rest/api/playfab/admin/segments/getsegments + * Retrieves the result of an export started by ExportPlayersInSegment API. If the ExportPlayersInSegment is successful and + * complete, this API returns the IndexUrl from which the index file can be downloaded. The index file has a list of urls + * from which the files containing the player profile data can be downloaded. Otherwise, it returns the current 'State' of + * the export + * https://docs.microsoft.com/rest/api/playfab/admin/playstream/getsegmentexport */ - GetSegments(request: PlayFabAdminModels.GetSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetSegmentExport(request: PlayFabAdminModels.GetPlayersInSegmentExportRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the build details for the specified game server executable - * https://docs.microsoft.com/rest/api/playfab/admin/custom-server-management/getserverbuildinfo + * Returns the total number of players in a given segment. + * https://docs.microsoft.com/rest/api/playfab/admin/playstream/getsegmentplayercount */ - GetServerBuildInfo(request: PlayFabAdminModels.GetServerBuildInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetSegmentPlayerCount(request: PlayFabAdminModels.GetSegmentPlayerCountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the pre-authorized URL for uploading a game server package containing a build (does not enable the build for - * use - see AddServerBuild) - * https://docs.microsoft.com/rest/api/playfab/admin/custom-server-management/getserverbuilduploadurl + * Get detail information of a segment and its associated definition(s) and action(s) for a title. + * https://docs.microsoft.com/rest/api/playfab/admin/segments/getsegments */ - GetServerBuildUploadUrl(request: PlayFabAdminModels.GetServerBuildUploadURLRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetSegments(request: PlayFabAdminModels.GetSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the set of items defined for the specified store, including all prices defined + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the set of items defined for the specified store, including all prices defined * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/getstoreitems */ - GetStoreItems(request: PlayFabAdminModels.GetStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetStoreItems(request: PlayFabAdminModels.GetStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Query for task instances by task, status, or time range. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/gettaskinstances */ - GetTaskInstances(request: PlayFabAdminModels.GetTaskInstancesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTaskInstances(request: PlayFabAdminModels.GetTaskInstancesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get definition information on a specified task or all tasks within a title. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/gettasks */ - GetTasks(request: PlayFabAdminModels.GetTasksRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTasks(request: PlayFabAdminModels.GetTasksRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom title settings which can be read by the client * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/gettitledata */ - GetTitleData(request: PlayFabAdminModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleData(request: PlayFabAdminModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom title settings which cannot be read by the client * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/gettitleinternaldata */ - GetTitleInternalData(request: PlayFabAdminModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleInternalData(request: PlayFabAdminModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the relevant details for a specified user, based upon a match against a supplied unique identifier * https://docs.microsoft.com/rest/api/playfab/admin/account-management/getuseraccountinfo */ - GetUserAccountInfo(request: PlayFabAdminModels.LookupUserAccountInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserAccountInfo(request: PlayFabAdminModels.LookupUserAccountInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets all bans for a user. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/getuserbans */ - GetUserBans(request: PlayFabAdminModels.GetUserBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserBans(request: PlayFabAdminModels.GetUserBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getuserdata */ - GetUserData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getuserinternaldata */ - GetUserInternalData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserInternalData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the specified user's current inventory of virtual goods + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the specified user's current inventory of virtual goods * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/getuserinventory */ - GetUserInventory(request: PlayFabAdminModels.GetUserInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserInventory(request: PlayFabAdminModels.GetUserInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getuserpublisherdata */ - GetUserPublisherData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getuserpublisherinternaldata */ - GetUserPublisherInternalData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherInternalData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getuserpublisherreadonlydata */ - GetUserPublisherReadOnlyData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherReadOnlyData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/getuserreadonlydata */ - GetUserReadOnlyData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserReadOnlyData(request: PlayFabAdminModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds the specified items to the specified user inventories + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Adds the specified items to the specified user inventories * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/grantitemstousers */ - GrantItemsToUsers(request: PlayFabAdminModels.GrantItemsToUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GrantItemsToUsers(request: PlayFabAdminModels.GrantItemsToUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Increases the global count for the given scarce resource. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Increases the global count for the given scarce resource. * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/incrementlimitededitionitemavailability */ - IncrementLimitedEditionItemAvailability(request: PlayFabAdminModels.IncrementLimitedEditionItemAvailabilityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + IncrementLimitedEditionItemAvailability(request: PlayFabAdminModels.IncrementLimitedEditionItemAvailabilityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Resets the indicated statistic, removing all player entries for it and backing up the old values. * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/incrementplayerstatisticversion */ - IncrementPlayerStatisticVersion(request: PlayFabAdminModels.IncrementPlayerStatisticVersionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + IncrementPlayerStatisticVersion(request: PlayFabAdminModels.IncrementPlayerStatisticVersionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of all Open ID Connect providers registered to a title. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/listopenidconnection */ - ListOpenIdConnection(request: PlayFabAdminModels.ListOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListOpenIdConnection(request: PlayFabAdminModels.ListOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the build details for all game server executables which are currently defined for the title - * https://docs.microsoft.com/rest/api/playfab/admin/custom-server-management/listserverbuilds + * Retrieves title-specific custom property values for a player. + * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/listplayercustomproperties */ - ListServerBuilds(request: PlayFabAdminModels.ListBuildsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListPlayerCustomProperties(request: PlayFabAdminModels.ListPlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retuns the list of all defined virtual currencies for the title + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retuns the list of all defined virtual currencies for the title * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/listvirtualcurrencytypes */ - ListVirtualCurrencyTypes(request: PlayFabAdminModels.ListVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListVirtualCurrencyTypes(request: PlayFabAdminModels.ListVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Updates the game server mode details for the specified game server executable - * https://docs.microsoft.com/rest/api/playfab/admin/matchmaking/modifymatchmakergamemodes - */ - ModifyMatchmakerGameModes(request: PlayFabAdminModels.ModifyMatchmakerGameModesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Updates the build details for the specified game server executable - * https://docs.microsoft.com/rest/api/playfab/admin/custom-server-management/modifyserverbuild - */ - ModifyServerBuild(request: PlayFabAdminModels.ModifyServerBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Attempts to process an order refund through the original real money payment provider. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Attempts to process an order refund through the original real money payment provider. * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/refundpurchase */ - RefundPurchase(request: PlayFabAdminModels.RefundPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RefundPurchase(request: PlayFabAdminModels.RefundPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Remove a given tag from a player profile. The tag's namespace is automatically generated based on the source of the tag. * https://docs.microsoft.com/rest/api/playfab/admin/playstream/removeplayertag */ - RemovePlayerTag(request: PlayFabAdminModels.RemovePlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemovePlayerTag(request: PlayFabAdminModels.RemovePlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Removes the game server executable specified from the set of those a client is permitted to request in a call to - * StartGame - * https://docs.microsoft.com/rest/api/playfab/admin/custom-server-management/removeserverbuild - */ - RemoveServerBuild(request: PlayFabAdminModels.RemoveServerBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Removes one or more virtual currencies from the set defined for the title. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Removes one or more virtual currencies from the set defined for the title. * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/removevirtualcurrencytypes */ - RemoveVirtualCurrencyTypes(request: PlayFabAdminModels.RemoveVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveVirtualCurrencyTypes(request: PlayFabAdminModels.RemoveVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Completely removes all statistics for the specified character, for the current game * https://docs.microsoft.com/rest/api/playfab/admin/characters/resetcharacterstatistics */ - ResetCharacterStatistics(request: PlayFabAdminModels.ResetCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ResetCharacterStatistics(request: PlayFabAdminModels.ResetCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Reset a player's password for a given title. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/resetpassword */ - ResetPassword(request: PlayFabAdminModels.ResetPasswordRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ResetPassword(request: PlayFabAdminModels.ResetPasswordRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Completely removes all statistics for the specified user, for the current game * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/resetuserstatistics */ - ResetUserStatistics(request: PlayFabAdminModels.ResetUserStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ResetUserStatistics(request: PlayFabAdminModels.ResetUserStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Attempts to resolve a dispute with the original order's payment provider. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Attempts to resolve a dispute with the original order's payment provider. * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/resolvepurchasedispute */ - ResolvePurchaseDispute(request: PlayFabAdminModels.ResolvePurchaseDisputeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ResolvePurchaseDispute(request: PlayFabAdminModels.ResolvePurchaseDisputeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Revoke all active bans for a user. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/revokeallbansforuser */ - RevokeAllBansForUser(request: PlayFabAdminModels.RevokeAllBansForUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeAllBansForUser(request: PlayFabAdminModels.RevokeAllBansForUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Revoke all active bans specified with BanId. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/revokebans */ - RevokeBans(request: PlayFabAdminModels.RevokeBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeBans(request: PlayFabAdminModels.RevokeBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Revokes access to an item in a user's inventory + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Revokes access to an item in a user's inventory * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/revokeinventoryitem */ - RevokeInventoryItem(request: PlayFabAdminModels.RevokeInventoryItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeInventoryItem(request: PlayFabAdminModels.RevokeInventoryItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Revokes access for up to 25 items across multiple users and characters. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Revokes access for up to 25 items across multiple users and characters. * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/revokeinventoryitems */ - RevokeInventoryItems(request: PlayFabAdminModels.RevokeInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeInventoryItems(request: PlayFabAdminModels.RevokeInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Run a task immediately regardless of its schedule. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/runtask */ - RunTask(request: PlayFabAdminModels.RunTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RunTask(request: PlayFabAdminModels.RunTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Forces an email to be sent to the registered email address for the user's account, with a link allowing the user to * change the password.If an account recovery email template ID is provided, an email using the custom email template will * be used. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/sendaccountrecoveryemail */ - SendAccountRecoveryEmail(request: PlayFabAdminModels.SendAccountRecoveryEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SendAccountRecoveryEmail(request: PlayFabAdminModels.SendAccountRecoveryEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Creates the catalog configuration of all virtual goods for the specified catalog version + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Creates the catalog configuration of all virtual goods for the specified catalog version * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/setcatalogitems */ - SetCatalogItems(request: PlayFabAdminModels.UpdateCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetCatalogItems(request: PlayFabAdminModels.UpdateCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Sets the override expiration for a membership subscription + * https://docs.microsoft.com/rest/api/playfab/admin/account-management/setmembershipoverride + */ + SetMembershipOverride(request: PlayFabAdminModels.SetMembershipOverrideRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets or resets the player's secret. Player secrets are used to sign API requests. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/setplayersecret */ - SetPlayerSecret(request: PlayFabAdminModels.SetPlayerSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetPlayerSecret(request: PlayFabAdminModels.SetPlayerSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the currently published revision of a title Cloud Script * https://docs.microsoft.com/rest/api/playfab/admin/server-side-cloud-script/setpublishedrevision */ - SetPublishedRevision(request: PlayFabAdminModels.SetPublishedRevisionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetPublishedRevision(request: PlayFabAdminModels.SetPublishedRevisionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the key-value store of custom publisher settings * https://docs.microsoft.com/rest/api/playfab/admin/shared-group-data/setpublisherdata */ - SetPublisherData(request: PlayFabAdminModels.SetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetPublisherData(request: PlayFabAdminModels.SetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Sets all the items in one virtual store + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Sets all the items in one virtual store * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/setstoreitems */ - SetStoreItems(request: PlayFabAdminModels.UpdateStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetStoreItems(request: PlayFabAdminModels.UpdateStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Creates and updates the key-value store of custom title settings which can be read by the client + * Creates and updates the key-value store of custom title settings which can be read by the client. For example, a + * developer could choose to store values which modify the user experience, such as enemy spawn rates, weapon strengths, + * movement speeds, etc. This allows a developer to update the title without the need to create, test, and ship a new + * build. * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/settitledata */ - SetTitleData(request: PlayFabAdminModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetTitleData(request: PlayFabAdminModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Set and delete key-value pairs in a title data override instance. * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/settitledataandoverrides */ - SetTitleDataAndOverrides(request: PlayFabAdminModels.SetTitleDataAndOverridesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetTitleDataAndOverrides(request: PlayFabAdminModels.SetTitleDataAndOverridesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Updates the key-value store of custom title settings which cannot be read by the client + * Updates the key-value store of custom title settings which cannot be read by the client. These values can be used to + * tweak settings used by game servers and Cloud Scripts without the need to update and re-deploy. * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/settitleinternaldata */ - SetTitleInternalData(request: PlayFabAdminModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetTitleInternalData(request: PlayFabAdminModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the Amazon Resource Name (ARN) for iOS and Android push notifications. Documentation on the exact restrictions can * be found at: http://docs.aws.amazon.com/sns/latest/api/API_CreatePlatformApplication.html. Currently, Amazon device * Messaging is not supported. * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/setuppushnotification */ - SetupPushNotification(request: PlayFabAdminModels.SetupPushNotificationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetupPushNotification(request: PlayFabAdminModels.SetupPushNotificationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Decrements the specified virtual currency by the stated amount + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Decrements the specified virtual currency by the stated amount * https://docs.microsoft.com/rest/api/playfab/admin/player-item-management/subtractuservirtualcurrency */ - SubtractUserVirtualCurrency(request: PlayFabAdminModels.SubtractUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SubtractUserVirtualCurrency(request: PlayFabAdminModels.SubtractUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates information of a list of existing bans specified with Ban Ids. * https://docs.microsoft.com/rest/api/playfab/admin/account-management/updatebans */ - UpdateBans(request: PlayFabAdminModels.UpdateBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateBans(request: PlayFabAdminModels.UpdateBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Updates the catalog configuration for virtual goods in the specified catalog version + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Updates the catalog configuration for virtual goods in the specified catalog version * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/updatecatalogitems */ - UpdateCatalogItems(request: PlayFabAdminModels.UpdateCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCatalogItems(request: PlayFabAdminModels.UpdateCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a new Cloud Script revision and uploads source code to it. Note that at this time, only one file should be * submitted in the revision. * https://docs.microsoft.com/rest/api/playfab/admin/server-side-cloud-script/updatecloudscript */ - UpdateCloudScript(request: PlayFabAdminModels.UpdateCloudScriptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCloudScript(request: PlayFabAdminModels.UpdateCloudScriptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Modifies data and credentials for an existing relationship between a title and an Open ID Connect provider * https://docs.microsoft.com/rest/api/playfab/admin/authentication/updateopenidconnection */ - UpdateOpenIdConnection(request: PlayFabAdminModels.UpdateOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateOpenIdConnection(request: PlayFabAdminModels.UpdateOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Updates the title-specific custom property values for a player + * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateplayercustomproperties + */ + UpdatePlayerCustomProperties(request: PlayFabAdminModels.UpdatePlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates a existing Player Shared Secret Key. It may take up to 5 minutes for this update to become generally available * after this API returns. * https://docs.microsoft.com/rest/api/playfab/admin/authentication/updateplayersharedsecret */ - UpdatePlayerSharedSecret(request: PlayFabAdminModels.UpdatePlayerSharedSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdatePlayerSharedSecret(request: PlayFabAdminModels.UpdatePlayerSharedSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates a player statistic configuration for the title, optionally allowing the developer to specify a reset interval. * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateplayerstatisticdefinition */ - UpdatePlayerStatisticDefinition(request: PlayFabAdminModels.UpdatePlayerStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdatePlayerStatisticDefinition(request: PlayFabAdminModels.UpdatePlayerStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Changes a policy for a title * https://docs.microsoft.com/rest/api/playfab/admin/authentication/updatepolicy */ - UpdatePolicy(request: PlayFabAdminModels.UpdatePolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdatePolicy(request: PlayFabAdminModels.UpdatePolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Updates the random drop table configuration for the title + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Updates the random drop table configuration for the title * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/updaterandomresulttables */ - UpdateRandomResultTables(request: PlayFabAdminModels.UpdateRandomResultTablesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateRandomResultTables(request: PlayFabAdminModels.UpdateRandomResultTablesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates an existing player segment and its associated definition(s) and action(s) for a title. * https://docs.microsoft.com/rest/api/playfab/admin/segments/updatesegment */ - UpdateSegment(request: PlayFabAdminModels.UpdateSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateSegment(request: PlayFabAdminModels.UpdateSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Updates an existing virtual item store with new or modified items + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Updates an existing virtual item store with new or modified items * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/updatestoreitems */ - UpdateStoreItems(request: PlayFabAdminModels.UpdateStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateStoreItems(request: PlayFabAdminModels.UpdateStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Update an existing task. * https://docs.microsoft.com/rest/api/playfab/admin/scheduledtask/updatetask */ - UpdateTask(request: PlayFabAdminModels.UpdateTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateTask(request: PlayFabAdminModels.UpdateTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateuserdata */ - UpdateUserData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateuserinternaldata */ - UpdateUserInternalData(request: PlayFabAdminModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserInternalData(request: PlayFabAdminModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the publisher-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateuserpublisherdata */ - UpdateUserPublisherData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserPublisherData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the publisher-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateuserpublisherinternaldata */ - UpdateUserPublisherInternalData(request: PlayFabAdminModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserPublisherInternalData(request: PlayFabAdminModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the publisher-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateuserpublisherreadonlydata */ - UpdateUserPublisherReadOnlyData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserPublisherReadOnlyData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/updateuserreadonlydata */ - UpdateUserReadOnlyData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserReadOnlyData(request: PlayFabAdminModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title specific display name for a user * https://docs.microsoft.com/rest/api/playfab/admin/account-management/updateusertitledisplayname */ - UpdateUserTitleDisplayName(request: PlayFabAdminModels.UpdateUserTitleDisplayNameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserTitleDisplayName(request: PlayFabAdminModels.UpdateUserTitleDisplayNameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Validates the result of a policy update without persisting it. + * https://docs.microsoft.com/rest/api/playfab/admin/authentication/validateapipolicy + */ + ValidateApiPolicy(request: PlayFabAdminModels.ValidateApiPolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } @@ -625,9 +655,37 @@ declare module PlayFabAdminModels { } + export interface Action { + /** Action content to add inventory item v2 */ + AddInventoryItemV2Content?: AddInventoryItemV2Content; + /** Action content to ban player */ + BanPlayerContent?: BanPlayerContent; + /** Action content to delete inventory item v2 */ + DeleteInventoryItemV2Content?: DeleteInventoryItemV2Content; + /** Action content to delete player */ + DeletePlayerContent?: DeletePlayerContent; + /** Action content to execute cloud script */ + ExecuteCloudScriptContent?: ExecuteCloudScriptContent; + /** Action content to execute azure function */ + ExecuteFunctionContent?: ExecuteFunctionContent; + /** Action content to grant item */ + GrantItemContent?: GrantItemContent; + /** Action content to grant virtual currency */ + GrantVirtualCurrencyContent?: GrantVirtualCurrencyContent; + /** Action content to increment player statistic */ + IncrementPlayerStatisticContent?: IncrementPlayerStatisticContent; + /** Action content to send push notification */ + PushNotificationContent?: PushNotificationContent; + /** Action content to send email */ + SendEmailContent?: SendEmailContent; + /** Action content to subtract inventory item v2 */ + SubtractInventoryItemV2Content?: SubtractInventoryItemV2Content; + + } + export interface ActionsOnPlayersInSegmentTaskParameter { - /** ID of the action to perform on each player in segment. */ - ActionId: string; + /** List of actions to perform on each player in a segment. Each action object can contain only one action type. */ + Actions?: Action[]; /** ID of the segment to perform actions on. */ SegmentId: string; @@ -661,16 +719,6 @@ declare module PlayFabAdminModels { } - export interface AdCampaignAttribution { - /** UTC time stamp of attribution */ - AttributedAt: string; - /** Attribution campaign identifier */ - CampaignId?: string; - /** Attribution network name */ - Platform?: string; - - } - export interface AdCampaignAttributionModel { /** UTC time stamp of attribution */ AttributedAt: string; @@ -691,6 +739,34 @@ declare module PlayFabAdminModels { } + export interface AddInventoryItemsV2SegmentAction { + /** Amount of the item to be granted to a player */ + Amount?: number; + /** The collection id for where the item will be granted in the player inventory */ + CollectionId?: string; + /** The duration in seconds of the subscription to be granted to a player */ + DurationInSeconds?: number; + /** The id of item to be granted to the player */ + ItemId?: string; + /** The stack id for where the item will be granted in the player inventory */ + StackId?: string; + + } + + export interface AddInventoryItemV2Content { + /** Amount of the item to be granted to a player */ + Amount?: number; + /** The collection id for where the item will be granted in the player inventory */ + CollectionId?: string; + /** The duration in seconds of the subscription to be granted to a player */ + DurationInSeconds?: number; + /** The id of item to be granted to the player */ + ItemId?: string; + /** The stack id for where the item will be granted in the player inventory */ + StackId?: string; + + } + export interface AddLocalizedNewsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Localized body text of the news. */ Body: string; @@ -714,6 +790,8 @@ declare module PlayFabAdminModels { Body: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; + /** Optional status for the new news item. If not set, defaults to Published. */ + Status?: string; /** Time this news was published. If not set, defaults to now. */ Timestamp?: string; /** Default title (headline) of the news item. */ @@ -741,59 +819,6 @@ declare module PlayFabAdminModels { } - export interface AddServerBuildRequest extends PlayFabModule.IPlayFabRequestCommon { - /** server host regions in which this build should be running and available */ - ActiveRegions?: string[]; - /** unique identifier for the build executable */ - BuildId: string; - /** appended to the end of the command line when starting game servers */ - CommandLineTemplate?: string; - /** developer comment(s) for this build */ - Comment?: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** path to the game server executable. Defaults to gameserver.exe */ - ExecutablePath?: string; - /** maximum number of game server instances that can run on a single host machine */ - MaxGamesPerHost: number; - /** - * minimum capacity of additional game server instances that can be started before the autoscaling service starts new host - * machines (given the number of current running host machines and game server instances) - */ - MinFreeGameSlots: number; - - } - - export interface AddServerBuildResult extends PlayFabModule.IPlayFabResultCommon { - /** array of regions where this build can used, when it is active */ - ActiveRegions?: string[]; - /** unique identifier for this build executable */ - BuildId?: string; - /** appended to the end of the command line when starting game servers */ - CommandLineTemplate?: string; - /** developer comment(s) for this build */ - Comment?: string; - /** path to the game server executable. Defaults to gameserver.exe */ - ExecutablePath?: string; - /** maximum number of game server instances that can run on a single host machine */ - MaxGamesPerHost: number; - /** - * minimum capacity of additional game server instances that can be started before the autoscaling service starts new host - * machines (given the number of current running host machines and game server instances) - */ - MinFreeGameSlots: number; - /** the current status of the build validation and processing steps */ - Status?: string; - /** time this build was last modified (or uploaded, if this build has never been modified) */ - Timestamp: string; - /** - * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a - * title has been selected. - */ - TitleId?: string; - - } - export interface AddUserVirtualCurrencyRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Amount to be added to the user balance of the specified virtual currency. Maximum VC balance is Int32 (2,147,483,647). @@ -830,6 +855,7 @@ declare module PlayFabAdminModels { type AuthTokenType = "Email" + export interface BanInfo { /** The active state of this ban. Expired bans may still have this value set to true but they will have no effect. */ Active: boolean; @@ -841,12 +867,20 @@ declare module PlayFabAdminModels { Expires?: string; /** The IP address on which the ban was applied. May affect multiple players. */ IPAddress?: string; - /** The MAC address on which the ban was applied. May affect multiple players. */ - MACAddress?: string; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId?: string; /** The reason why this ban was applied. */ Reason?: string; + /** The family type of the user that is included in the ban. */ + UserFamilyType?: string; + + } + + export interface BanPlayerContent { + /** Duration(in hours) to ban a player. If not provided, the player will be banned permanently. */ + BanDurationHours?: number; + /** Reason to ban a player */ + BanReason?: string; } @@ -863,12 +897,12 @@ declare module PlayFabAdminModels { DurationInHours?: number; /** IP address to be banned. May affect multiple players. */ IPAddress?: string; - /** MAC address to be banned. May affect multiple players. */ - MACAddress?: string; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; /** The reason for this ban. Maximum 140 characters. */ Reason?: string; + /** The family type of the user that should be included in the ban if applicable. May affect multiple players. */ + UserFamilyType?: string; } @@ -1010,6 +1044,20 @@ declare module PlayFabAdminModels { } + export interface ChurnPredictionSegmentFilter { + /** Comparison */ + Comparison?: string; + /** RiskLevel */ + RiskLevel?: string; + + } + + type ChurnRiskLevel = "NoData" + + | "LowRisk" + | "MediumRisk" + | "HighRisk"; + export interface CloudScriptFile { /** Contents of the Cloud Script javascript. Must be string-escaped javascript. */ FileContents: string; @@ -1062,19 +1110,10 @@ declare module PlayFabAdminModels { } type Conditionals = "Any" + | "True" | "False"; - export interface ContactEmailInfo { - /** The email address */ - EmailAddress?: string; - /** The name of the email info data */ - Name?: string; - /** The verification status of the email */ - VerificationStatus?: string; - - } - export interface ContactEmailInfoModel { /** The email address */ EmailAddress?: string; @@ -1096,14 +1135,17 @@ declare module PlayFabAdminModels { } type ContinentCode = "AF" + | "AN" | "AS" | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" + | "AX" | "AL" | "DZ" @@ -1351,7 +1393,8 @@ declare module PlayFabAdminModels { | "EH" | "YE" | "ZM" - | "ZW"; + | "ZW" + | "Unknown"; export interface CreateActionsOnPlayerSegmentTaskRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ @@ -1419,6 +1462,8 @@ declare module PlayFabAdminModels { IssuerDiscoveryUrl?: string; /** Manually specified information for an OpenID Connect issuer. */ IssuerInformation?: OpenIdIssuerInformation; + /** Override the issuer name for user indexing and lookup. */ + IssuerOverride?: string; } @@ -1473,6 +1518,7 @@ declare module PlayFabAdminModels { } type Currency = "AED" + | "AFN" | "ALL" | "AMD" @@ -1635,12 +1681,88 @@ declare module PlayFabAdminModels { | "ZMW" | "ZWD"; + export interface CustomPropertyBooleanSegmentFilter { + /** Custom property comparison. */ + Comparison?: string; + /** Custom property name. */ + PropertyName?: string; + /** Custom property boolean value. */ + PropertyValue: boolean; + + } + + export interface CustomPropertyDateTimeSegmentFilter { + /** Custom property comparison. */ + Comparison?: string; + /** Custom property name. */ + PropertyName?: string; + /** Custom property datetime value. */ + PropertyValue: string; + + } + + export interface CustomPropertyDetails { + /** The custom property's name. */ + Name?: string; + /** The custom property's value. */ + Value?: any; + + } + + export interface CustomPropertyNumericSegmentFilter { + /** Custom property comparison. */ + Comparison?: string; + /** Custom property name. */ + PropertyName?: string; + /** Custom property numeric value. */ + PropertyValue: number; + + } + + export interface CustomPropertyStringSegmentFilter { + /** Custom property comparison. */ + Comparison?: string; + /** Custom property name. */ + PropertyName?: string; + /** Custom property string value. */ + PropertyValue?: string; + + } + export interface DeleteContentRequest extends PlayFabModule.IPlayFabRequestCommon { /** Key of the content item to be deleted */ Key: string; } + export interface DeletedPropertyDetails { + /** The name of the property which was requested to be deleted. */ + Name?: string; + /** Indicates whether or not the property was deleted. If false, no property with that name existed. */ + WasDeleted: boolean; + + } + + export interface DeleteInventoryItemsV2SegmentAction { + /** The collection id for where the item will be removed from the player inventory */ + CollectionId?: string; + /** The id of item to be removed from the player */ + ItemId?: string; + /** The stack id for where the item will be removed from the player inventory */ + StackId?: string; + + } + + export interface DeleteInventoryItemV2Content { + /** The collection id for where the item will be removed from the player inventory */ + CollectionId?: string; + /** The id of item to be removed from the player */ + ItemId?: string; + /** The stack id for where the item will be removed from the player inventory */ + StackId?: string; + + } + export interface DeleteMasterPlayerAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** Developer created string to identify a user without PlayFab ID */ MetaData?: string; @@ -1660,12 +1782,70 @@ declare module PlayFabAdminModels { } + export interface DeleteMasterPlayerEventDataRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface DeleteMasterPlayerEventDataResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteMembershipSubscriptionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Id of the membership to apply the override expiration date to. */ + MembershipId: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** Id of the subscription that should be deleted from the membership. */ + SubscriptionId: string; + + } + + export interface DeleteMembershipSubscriptionResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface DeleteOpenIdConnectionRequest extends PlayFabModule.IPlayFabRequestCommon { /** unique name of the connection */ ConnectionId: string; } + export interface DeletePlayerContent { + + } + + export interface DeletePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Optional field used for concurrency control. One can ensure that the delete operation will only be performed if the + * player's properties have not been updated by any other clients since the last version. + */ + ExpectedPropertiesVersion?: number; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** A list of property names denoting which properties should be deleted. */ + PropertyNames: string[]; + + } + + export interface DeletePlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** The list of properties requested to be deleted. */ + DeletedProperties?: DeletedPropertyDetails[]; + /** PlayFab unique identifier of the user whose properties were deleted. */ + PlayFabId?: string; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + + } + export interface DeletePlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; @@ -1747,6 +1927,7 @@ declare module PlayFabAdminModels { } type EffectType = "Allow" + | "Deny"; export interface EmailNotificationSegmentAction { @@ -1758,6 +1939,7 @@ declare module PlayFabAdminModels { } type EmailVerificationStatus = "Unverified" + | "Pending" | "Confirmed"; @@ -1783,6 +1965,16 @@ declare module PlayFabAdminModels { } + export interface ExecuteCloudScriptContent { + /** Arguments(JSON) to be passed into the cloudscript method */ + CloudScriptMethodArguments: string; + /** Cloudscript method name */ + CloudScriptMethodName: string; + /** Publish cloudscript results as playstream event */ + PublishResultsToPlayStream: boolean; + + } + export interface ExecuteCloudScriptResult { /** Number of PlayFab API requests issued by the CloudScript function */ APIRequestsIssued: number; @@ -1833,6 +2025,16 @@ declare module PlayFabAdminModels { } + export interface ExecuteFunctionContent { + /** Arguments(JSON) to be passed into the cloudscript azure function */ + CloudScriptFunctionArguments: string; + /** Cloudscript azure function name */ + CloudScriptFunctionName: string; + /** Publish results from executing the azure function as playstream event */ + PublishResultsToPlayStream: boolean; + + } + export interface ExportMasterPlayerDataRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; @@ -1848,6 +2050,20 @@ declare module PlayFabAdminModels { } + export interface ExportPlayersInSegmentRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique identifier of the requested segment. */ + SegmentId: string; + + } + + export interface ExportPlayersInSegmentResult extends PlayFabModule.IPlayFabResultCommon { + /** Unique identifier of the export for the requested Segment. */ + ExportId?: string; + /** Unique identifier of the requested Segment. */ + SegmentId?: string; + + } + export interface FirstLoginDateSegmentFilter { /** First player login date comparison. */ Comparison?: string; @@ -1864,25 +2080,8 @@ declare module PlayFabAdminModels { } - type GameBuildStatus = "Available" - | "Validating" - | "InvalidBuildPackage" - | "Processing" - | "FailedToProcess"; - - export interface GameModeInfo { - /** specific game mode type */ - Gamemode: string; - /** maximum user count a specific Game Server Instance can support */ - MaxPlayerCount: number; - /** minimum user count required for this Game Server Instance to continue (usually 1) */ - MinPlayerCount: number; - /** whether to start as an open session, meaning that players can matchmake into it (defaults to true) */ - StartOpen?: boolean; - - } - type GenericErrorCodes = "Success" + | "UnkownError" | "InvalidParams" | "AccountNotFound" @@ -1986,7 +2185,6 @@ declare module PlayFabAdminModels { | "UnableToConnectToDatabase" | "InternalServerError" | "InvalidReportDate" - | "ReportNotAvailable" | "DatabaseThroughputExceeded" | "InvalidGameTicket" | "ExpiredGameTicket" @@ -2362,7 +2560,6 @@ declare module PlayFabAdminModels { | "InsightsManagementGetOperationStatusInvalidParameter" | "DuplicatePurchaseTransactionId" | "EvaluationModePlayerCountExceeded" - | "GetPlayersInSegmentRateLimitExceeded" | "CloudScriptFunctionNameSizeExceeded" | "PaidInsightsFeaturesNotEnabled" | "CloudScriptAzureFunctionsQueueRequestError" @@ -2387,6 +2584,104 @@ declare module PlayFabAdminModels { | "SteamUserNotFound" | "ElasticSearchOperationFailed" | "NotImplemented" + | "PublisherNotFound" + | "PublisherDeleted" + | "ApiDisabledForMigration" + | "ResourceNameUpdateNotAllowed" + | "ApiNotEnabledForTitle" + | "DuplicateTitleNameForPublisher" + | "AzureTitleCreationInProgress" + | "TitleConstraintsPublisherDeletion" + | "InvalidPlayerAccountPoolId" + | "PlayerAccountPoolNotFound" + | "PlayerAccountPoolDeleted" + | "TitleCleanupInProgress" + | "AzureResourceConcurrentOperationInProgress" + | "TitlePublisherUpdateNotAllowed" + | "AzureResourceManagerNotSupportedInStamp" + | "ApiNotIncludedInAzurePlayFabFeatureSet" + | "GoogleServiceAccountFailedAuth" + | "GoogleAPIServiceUnavailable" + | "GoogleAPIServiceUnknownError" + | "NoValidIdentityForAad" + | "PlayerIdentityLinkNotFound" + | "PhotonApplicationIdAlreadyInUse" + | "CloudScriptUnableToDeleteProductionRevision" + | "CustomIdNotFound" + | "AutomationInvalidInput" + | "AutomationInvalidRuleName" + | "AutomationRuleAlreadyExists" + | "AutomationRuleLimitExceeded" + | "InvalidGooglePlayGamesServerAuthCode" + | "PlayStreamConnectionFailed" + | "InvalidEventContents" + | "InsightsV1Deprecated" + | "AnalysisSubscriptionNotFound" + | "AnalysisSubscriptionFailed" + | "AnalysisSubscriptionFoundAlready" + | "AnalysisSubscriptionManagementInvalidInput" + | "InvalidGameCenterId" + | "InvalidNintendoSwitchAccountId" + | "EntityAPIKeysNotSupported" + | "IpAddressBanned" + | "EntityLineageBanned" + | "NamespaceMismatch" + | "InvalidServiceConfiguration" + | "InvalidNamespaceMismatch" + | "LeaderboardColumnLengthMismatch" + | "InvalidStatisticScore" + | "LeaderboardColumnsNotSpecified" + | "LeaderboardMaxSizeTooLarge" + | "InvalidAttributeStatisticsSpecified" + | "LeaderboardNotFound" + | "TokenSigningKeyNotFound" + | "LeaderboardNameConflict" + | "LinkedStatisticColumnMismatch" + | "NoLinkedStatisticToLeaderboard" + | "StatDefinitionAlreadyLinkedToLeaderboard" + | "LinkingStatsNotAllowedForEntityType" + | "LeaderboardCountLimitExceeded" + | "LeaderboardSizeLimitExceeded" + | "LeaderboardDefinitionModificationNotAllowedWhileLinked" + | "StatisticDefinitionModificationNotAllowedWhileLinked" + | "LeaderboardUpdateNotAllowedWhileLinked" + | "CloudScriptAzureFunctionsEventHubRequestError" + | "ExternalEntityNotAllowedForTier" + | "InvalidBaseTimeForInterval" + | "EntityTypeMismatchWithStatDefinition" + | "SpecifiedVersionLeaderboardNotFound" + | "LeaderboardColumnLengthMismatchWithStatDefinition" + | "DuplicateColumnNameFound" + | "LinkedStatisticColumnNotFound" + | "LinkedStatisticColumnRequired" + | "MultipleLinkedStatisticsNotAllowed" + | "DuplicateLinkedStatisticColumnNameFound" + | "AggregationTypeNotAllowedForMultiColumnStatistic" + | "MaxQueryableVersionsValueNotAllowedForTier" + | "StatisticDefinitionHasNullOrEmptyVersionConfiguration" + | "StatisticColumnLengthMismatch" + | "InvalidExternalEntityId" + | "UpdatingStatisticsUsingTransactionIdNotAvailableForFreeTier" + | "TransactionAlreadyApplied" + | "ReportDataNotRetrievedSuccessfully" + | "ResetIntervalCannotBeModified" + | "VersionIncrementRateExceeded" + | "InvalidSteamUsername" + | "InvalidVersionResetForLinkedLeaderboard" + | "BattleNetNotEnabledForTitle" + | "ReportNotProcessed" + | "DataNotAvailable" + | "InvalidReportName" + | "ResourceNotModified" + | "StudioCreationLimitExceeded" + | "StudioDeletionInitiated" + | "ProductDisabledForTitle" + | "PreconditionFailed" + | "CannotEnableAnonymousPlayerCreation" + | "ParentCustomerAccountNotFound" + | "AccountLinkedToABannedPlayer" + | "AzureSubscriptionNotEligibleForLinking" + | "EntityIsNotAMember" | "MatchmakingEntityInvalid" | "MatchmakingPlayerAttributesInvalid" | "MatchmakingQueueNotFound" @@ -2408,6 +2703,11 @@ declare module PlayFabAdminModels { | "MatchmakingQueueLimitExceeded" | "MatchmakingRequestTypeMismatch" | "MatchmakingBadRequest" + | "PubSubFeatureNotEnabledForTitle" + | "PubSubTooManyRequests" + | "PubSubConnectionNotFoundForEntity" + | "PubSubConnectionHandleInvalid" + | "PubSubSubscriptionLimitExceeded" | "TitleConfigNotFound" | "TitleConfigUpdateConflict" | "TitleConfigSerializationError" @@ -2425,6 +2725,8 @@ declare module PlayFabAdminModels { | "CatalogItemTypeInvalid" | "CatalogBadRequest" | "CatalogTooManyRequests" + | "InvalidCatalogItemConfiguration" + | "LegacyEconomyDisabled" | "ExportInvalidStatusUpdate" | "ExportInvalidPrefix" | "ExportBlobContainerDoesNotExist" @@ -2449,6 +2751,7 @@ declare module PlayFabAdminModels { | "ExportCannotParseQuery" | "ExportControlCommandsNotAllowed" | "ExportQueryMissingTableReference" + | "ExportInsightsV1Deprecated" | "ExplorerBasicInvalidQueryName" | "ExplorerBasicInvalidQueryDescription" | "ExplorerBasicInvalidQueryConditions" @@ -2464,10 +2767,13 @@ declare module PlayFabAdminModels { | "ExplorerBasicUpdateQueryError" | "ExplorerBasicSavedQueriesLimit" | "ExplorerBasicSavedQueryNotFound" + | "TenantShardMapperShardNotFound" | "TitleNotEnabledForParty" | "PartyVersionNotFound" | "MultiplayerServerBuildReferencedByMatchmakingQueue" | "MultiplayerServerBuildReferencedByBuildAlias" + | "MultiplayerServerBuildAliasReferencedByMatchmakingQueue" + | "PartySerializationError" | "ExperimentationExperimentStopped" | "ExperimentationExperimentRunning" | "ExperimentationExperimentNotFound" @@ -2491,6 +2797,10 @@ declare module PlayFabAdminModels { | "ExperimentationExclusionGroupCannotDelete" | "ExperimentationExclusionGroupInvalidTrafficAllocation" | "ExperimentationExclusionGroupInvalidName" + | "ExperimentationLegacyExperimentInvalidOperation" + | "ExperimentationExperimentStopFailed" + | "ExperimentationExperimentDeleteFailed" + | "ExperimentationExperimentStartFailed" | "MaxActionDepthExceeded" | "TitleNotOnUpdatedPricingPlan" | "SegmentManagementTitleNotInFlight" @@ -2505,8 +2815,219 @@ declare module PlayFabAdminModels { | "UpdateSegmentRateLimitExceeded" | "GetSegmentsRateLimitExceeded" | "AsyncExportNotInFlight" + | "AsyncExportNotFound" + | "AsyncExportRateLimitExceeded" + | "AnalyticsSegmentCountOverLimit" + | "GetSegmentPlayerCountNotInFlight" + | "GetSegmentPlayerCountRateLimitExceeded" | "SnapshotNotFound" - | "InventoryApiNotImplemented"; + | "InventoryApiNotImplemented" + | "InventoryCollectionDeletionDisallowed" + | "LobbyDoesNotExist" + | "LobbyRateLimitExceeded" + | "LobbyPlayerAlreadyJoined" + | "LobbyNotJoinable" + | "LobbyMemberCannotRejoin" + | "LobbyCurrentPlayersMoreThanMaxPlayers" + | "LobbyPlayerNotPresent" + | "LobbyBadRequest" + | "LobbyPlayerMaxLobbyLimitExceeded" + | "LobbyNewOwnerMustBeConnected" + | "LobbyCurrentOwnerStillConnected" + | "LobbyMemberIsNotOwner" + | "LobbyServerMismatch" + | "LobbyServerNotFound" + | "LobbyDifferentServerAlreadyJoined" + | "LobbyServerAlreadyJoined" + | "LobbyIsNotClientOwned" + | "LobbyDoesNotUseConnections" + | "EventSamplingInvalidRatio" + | "EventSamplingInvalidEventNamespace" + | "EventSamplingInvalidEventName" + | "EventSamplingRatioNotFound" + | "TelemetryKeyNotFound" + | "TelemetryKeyInvalidName" + | "TelemetryKeyAlreadyExists" + | "TelemetryKeyInvalid" + | "TelemetryKeyCountOverLimit" + | "TelemetryKeyDeactivated" + | "TelemetryKeyLongInsightsRetentionNotAllowed" + | "EventSinkConnectionInvalid" + | "EventSinkConnectionUnauthorized" + | "EventSinkRegionInvalid" + | "EventSinkLimitExceeded" + | "EventSinkSasTokenInvalid" + | "EventSinkNotFound" + | "EventSinkNameInvalid" + | "EventSinkSasTokenPermissionInvalid" + | "EventSinkSecretInvalid" + | "EventSinkTenantNotFound" + | "EventSinkAadNotFound" + | "EventSinkDatabaseNotFound" + | "EventSinkTitleUnauthorized" + | "EventSinkInsufficientRoleAssignment" + | "EventSinkContainerNotFound" + | "EventSinkTenantIdInvalid" + | "EventSinkResourceMisconfigured" + | "EventSinkAccessDenied" + | "EventSinkWriteConflict" + | "EventSinkResourceNotFound" + | "EventSinkResourceFeatureNotSupported" + | "EventSinkBucketNameInvalid" + | "EventSinkResourceUnavailable" + | "OperationCanceled" + | "InvalidDisplayNameRandomSuffixLength" + | "AllowNonUniquePlayerDisplayNamesDisableNotAllowed" + | "PartitionedEventInvalid" + | "PartitionedEventCountOverLimit" + | "ManageEventNamespaceInvalid" + | "ManageEventNameInvalid" + | "ManagedEventNotFound" + | "ManageEventsInvalidRatio" + | "ManagedEventInvalid" + | "PlayerCustomPropertiesPropertyNameTooLong" + | "PlayerCustomPropertiesPropertyNameIsInvalid" + | "PlayerCustomPropertiesStringPropertyValueTooLong" + | "PlayerCustomPropertiesValueIsInvalidType" + | "PlayerCustomPropertiesVersionMismatch" + | "PlayerCustomPropertiesPropertyCountTooHigh" + | "PlayerCustomPropertiesDuplicatePropertyName" + | "PlayerCustomPropertiesPropertyDoesNotExist" + | "AddonAlreadyExists" + | "AddonDoesntExist" + | "TrueSkillUnauthorized" + | "TrueSkillInvalidTitleId" + | "TrueSkillInvalidScenarioId" + | "TrueSkillInvalidModelId" + | "TrueSkillInvalidModelName" + | "TrueSkillInvalidPlayerIds" + | "TrueSkillInvalidEntityKey" + | "TrueSkillInvalidConditionKey" + | "TrueSkillInvalidConditionValue" + | "TrueSkillInvalidConditionAffinityWeight" + | "TrueSkillInvalidEventName" + | "TrueSkillMatchResultCreated" + | "TrueSkillMatchResultAlreadySubmitted" + | "TrueSkillBadPlayerIdInMatchResult" + | "TrueSkillInvalidBotIdInMatchResult" + | "TrueSkillDuplicatePlayerInMatchResult" + | "TrueSkillNoPlayerInMatchResultTeam" + | "TrueSkillPlayersInMatchResultExceedingLimit" + | "TrueSkillInvalidPreMatchPartyInMatchResult" + | "TrueSkillInvalidTimestampInMatchResult" + | "TrueSkillStartTimeMissingInMatchResult" + | "TrueSkillEndTimeMissingInMatchResult" + | "TrueSkillInvalidPlayerSecondsPlayedInMatchResult" + | "TrueSkillNoTeamInMatchResult" + | "TrueSkillNotEnoughTeamsInMatchResult" + | "TrueSkillInvalidRanksInMatchResult" + | "TrueSkillNoWinnerInMatchResult" + | "TrueSkillMissingRequiredCondition" + | "TrueSkillMissingRequiredEvent" + | "TrueSkillUnknownEventName" + | "TrueSkillInvalidEventCount" + | "TrueSkillUnknownConditionKey" + | "TrueSkillUnknownConditionValue" + | "TrueSkillScenarioConfigDoesNotExist" + | "TrueSkillUnknownModelId" + | "TrueSkillNoModelInScenario" + | "TrueSkillNotSupportedForTitle" + | "TrueSkillModelIsNotActive" + | "TrueSkillUnauthorizedToQueryOtherPlayerSkills" + | "TrueSkillInvalidMaxIterations" + | "TrueSkillEndTimeBeforeStartTime" + | "TrueSkillInvalidJobId" + | "TrueSkillInvalidMetadataId" + | "TrueSkillMissingBuildVerison" + | "TrueSkillJobAlreadyExists" + | "TrueSkillJobNotFound" + | "TrueSkillOperationCanceled" + | "TrueSkillActiveModelLimitExceeded" + | "TrueSkillTotalModelLimitExceeded" + | "TrueSkillUnknownInitialModelId" + | "TrueSkillUnauthorizedForJob" + | "TrueSkillInvalidScenarioName" + | "TrueSkillConditionStateIsRequired" + | "TrueSkillEventStateIsRequired" + | "TrueSkillDuplicateEvent" + | "TrueSkillDuplicateCondition" + | "TrueSkillInvalidAnomalyThreshold" + | "TrueSkillConditionKeyLimitExceeded" + | "TrueSkillConditionValuePerKeyLimitExceeded" + | "TrueSkillInvalidTimestamp" + | "TrueSkillEventLimitExceeded" + | "TrueSkillInvalidPlayers" + | "TrueSkillTrueSkillPlayerNull" + | "TrueSkillInvalidPlayerId" + | "TrueSkillInvalidSquadSize" + | "TrueSkillConditionSetNotInModel" + | "TrueSkillModelStateInvalidForOperation" + | "TrueSkillScenarioContainsActiveModel" + | "TrueSkillInvalidConditionRank" + | "TrueSkillTotalScenarioLimitExceeded" + | "TrueSkillInvalidConditionsList" + | "GameSaveManifestNotFound" + | "GameSaveManifestVersionAlreadyExists" + | "GameSaveConflictUpdatingManifest" + | "GameSaveManifestUpdatesNotAllowed" + | "GameSaveFileAlreadyExists" + | "GameSaveManifestVersionNotFinalized" + | "GameSaveUnknownFileInManifest" + | "GameSaveFileExceededReportedSize" + | "GameSaveFileNotUploaded" + | "GameSaveBadRequest" + | "GameSaveOperationNotAllowed" + | "GameSaveDataStorageQuotaExceeded" + | "GameSaveNewerManifestExists" + | "GameSaveBaseVersionNotAvailable" + | "GameSaveManifestVersionQuarantined" + | "GameSaveManifestUploadProgressUpdateNotAllowed" + | "GameSaveNotFinalizedManifestNotEligibleAsKnownGood" + | "GameSaveNoUpdatesRequested" + | "GameSaveTitleDoesNotExist" + | "GameSaveOperationNotAllowedForTitle" + | "GameSaveManifestFilesLimitExceeded" + | "GameSaveManifestDescriptionUpdateNotAllowed" + | "GameSaveTitleConfigNotFound" + | "GameSaveTitleAlreadyOnboarded" + | "GameSaveServiceNotEnabledForTitle" + | "GameSaveServiceOnboardingPending" + | "GameSaveManifestNotEligibleAsConflictingVersion" + | "GameSaveServiceUnavailable" + | "GameSaveConflict" + | "GameSaveManifestNotEligibleForRollback" + | "GameSaveTitleClientAnonymousAccountCreationNotDisabled" + | "GameSaveTitleConfigNoUpdatesRequested" + | "GameSavePlayerNotEligibleForTransfer" + | "StateShareForbidden" + | "StateShareTitleNotInFlight" + | "StateShareStateNotFound" + | "StateShareLinkNotFound" + | "StateShareStateRedemptionLimitExceeded" + | "StateShareStateRedemptionLimitNotUpdated" + | "StateShareCreatedStatesLimitExceeded" + | "StateShareIdMissingOrMalformed" + | "PlayerCreationDisabled" + | "AccountAlreadyExists" + | "TagInvalid" + | "TagTooLong" + | "StatisticColumnAggregationMismatch" + | "StatisticResetIntervalMismatch" + | "VersionConfigurationCannotBeSpecifiedForLinkedStat" + | "VersionConfigurationIsRequired" + | "InvalidEntityTypeForAggregation" + | "MultiLevelAggregationNotAllowed" + | "AggregationTypeNotAllowedForLinkedStat" + | "OperationDeniedDueToDefinitionPolicy" + | "StatisticUpdateNotAllowedWhileLinked" + | "UnsupportedEntityType" + | "EntityTypeSpecifiedRequiresAggregationSource" + | "PlayFabErrorEventNotSupportedForEntityType" + | "MetadataLengthExceeded" + | "MaxQueryableVersionsExceeded" + | "StatisticVersionIncrementNotAllowedWhileLinked" + | "StoreMetricsRequestInvalidInput" + | "StoreMetricsErrorRetrievingMetrics"; export interface GetActionsOnPlayersInSegmentTaskInstanceResult extends PlayFabModule.IPlayFabResultCommon { /** Parameter of this task instance */ @@ -2638,61 +3159,36 @@ declare module PlayFabAdminModels { } - export interface GetMatchmakerGameInfoRequest extends PlayFabModule.IPlayFabRequestCommon { - /** unique identifier of the lobby for which info is being requested */ - LobbyId: string; - - } - - export interface GetMatchmakerGameInfoResult extends PlayFabModule.IPlayFabResultCommon { - /** version identifier of the game server executable binary being run */ - BuildVersion?: string; - /** time when Game Server Instance is currently scheduled to end */ - EndTime?: string; - /** unique identifier of the lobby */ - LobbyId?: string; - /** game mode for this Game Server Instance */ - Mode?: string; - /** array of unique PlayFab identifiers for users currently connected to this Game Server Instance */ - Players?: string[]; - /** region in which the Game Server Instance is running */ - Region?: string; - /** IPV4 address of the server */ - ServerIPV4Address?: string; - /** IPV6 address of the server */ - ServerIPV6Address?: string; - /** communication port for this Game Server Instance */ - ServerPort: number; - /** Public DNS name (if any) of the server */ - ServerPublicDNSName?: string; - /** time when the Game Server Instance was created */ - StartTime: string; - /** unique identifier of the Game Server Instance for this lobby */ - TitleId?: string; - - } - - export interface GetMatchmakerGameModesRequest extends PlayFabModule.IPlayFabRequestCommon { - /** previously uploaded build version for which game modes are being requested */ - BuildVersion: string; + export interface GetPlayedTitleListRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; } - export interface GetMatchmakerGameModesResult extends PlayFabModule.IPlayFabResultCommon { - /** array of game modes available for the specified build */ - GameModes?: GameModeInfo[]; + export interface GetPlayedTitleListResult extends PlayFabModule.IPlayFabResultCommon { + /** List of titles the player has played */ + TitleIds?: string[]; } - export interface GetPlayedTitleListRequest extends PlayFabModule.IPlayFabRequestCommon { + export interface GetPlayerCustomPropertyRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; + /** Specific property name to search for in the player's properties. */ + PropertyName: string; } - export interface GetPlayedTitleListResult extends PlayFabModule.IPlayFabResultCommon { - /** List of titles the player has played */ - TitleIds?: string[]; + export interface GetPlayerCustomPropertyResult extends PlayFabModule.IPlayFabResultCommon { + /** PlayFab unique identifier of the user whose properties are being returned. */ + PlayFabId?: string; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + /** Player specific property and its corresponding value. */ + Property?: CustomPropertyDetails; } @@ -2749,30 +3245,17 @@ declare module PlayFabAdminModels { } - export interface GetPlayersInSegmentRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Continuation token if retrieving subsequent pages of results. */ - ContinuationToken?: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Maximum number of profiles to load. Default is 1,000. Maximum is 10,000. */ - MaxBatchSize?: number; - /** - * Number of seconds to keep the continuation token active. After token expiration it is not possible to continue paging - * results. Default is 300 (5 minutes). Maximum is 1,800 (30 minutes). - */ - SecondsToLive?: number; - /** Unique identifier for this segment. */ - SegmentId: string; + export interface GetPlayersInSegmentExportRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique identifier of the export for the requested Segment. */ + ExportId: string; } - export interface GetPlayersInSegmentResult extends PlayFabModule.IPlayFabResultCommon { - /** Continuation token to use to retrieve subsequent pages of results. If token returns null there are no more results. */ - ContinuationToken?: string; - /** Array of player profiles in this segment. */ - PlayerProfiles?: PlayerProfile[]; - /** Count of profiles matching this segment. */ - ProfilesInSegment: number; + export interface GetPlayersInSegmentExportResponse extends PlayFabModule.IPlayFabResultCommon { + /** Url from which the index file can be downloaded. */ + IndexUrl?: string; + /** Shows the current status of the export */ + State?: string; } @@ -2827,12 +3310,17 @@ declare module PlayFabAdminModels { } export interface GetPolicyRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The name of the policy to read. Only supported name is 'ApiPolicy'. */ + /** + * The name of the policy to read. Only 'ApiPolicy' is supported. This parameter is optional and defaults to 'ApiPolicy' if + * omitted. + */ PolicyName?: string; } export interface GetPolicyResponse extends PlayFabModule.IPlayFabResultCommon { + /** The UTC date and time when the policy was last updated. Null if the policy has never been customized. */ + LastUpdated?: string; /** The name of the policy read. */ PolicyName?: string; /** Policy version. */ @@ -2866,6 +3354,18 @@ declare module PlayFabAdminModels { } + export interface GetSegmentPlayerCountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique identifier for the requested segment. */ + SegmentId: string; + + } + + export interface GetSegmentPlayerCountResult extends PlayFabModule.IPlayFabResultCommon { + /** Count of profiles matching this segment. */ + ProfilesInSegment: number; + + } + export interface GetSegmentResult { /** Identifier of the segments AB Test, if it is attached to one. */ ABTestParent?: string; @@ -2890,52 +3390,6 @@ declare module PlayFabAdminModels { } - export interface GetServerBuildInfoRequest extends PlayFabModule.IPlayFabRequestCommon { - /** unique identifier of the previously uploaded build executable for which information is being requested */ - BuildId: string; - - } - - export interface GetServerBuildInfoResult extends PlayFabModule.IPlayFabResultCommon { - /** array of regions where this build can used, when it is active */ - ActiveRegions?: string[]; - /** unique identifier for this build executable */ - BuildId?: string; - /** developer comment(s) for this build */ - Comment?: string; - /** error message, if any, about this build */ - ErrorMessage?: string; - /** maximum number of game server instances that can run on a single host machine */ - MaxGamesPerHost: number; - /** - * minimum capacity of additional game server instances that can be started before the autoscaling service starts new host - * machines (given the number of current running host machines and game server instances) - */ - MinFreeGameSlots: number; - /** the current status of the build validation and processing steps */ - Status?: string; - /** time this build was last modified (or uploaded, if this build has never been modified) */ - Timestamp: string; - /** - * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a - * title has been selected. - */ - TitleId?: string; - - } - - export interface GetServerBuildUploadURLRequest extends PlayFabModule.IPlayFabRequestCommon { - /** unique identifier of the game server build to upload */ - BuildId: string; - - } - - export interface GetServerBuildUploadURLResult extends PlayFabModule.IPlayFabResultCommon { - /** pre-authorized URL for uploading the game server build package */ - URL?: string; - - } - export interface GetStoreItemsRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version to store items from. Use default catalog version if null */ CatalogVersion?: string; @@ -3122,6 +3576,16 @@ declare module PlayFabAdminModels { } + export interface GrantItemContent { + /** The catalog version of the item to be granted to the player */ + CatalogVersion?: string; + /** The id of item to be granted to the player */ + ItemId?: string; + /** Quantity of the item to be granted to a player */ + ItemQuantity: number; + + } + export interface GrantItemSegmentAction { /** Item catalog id. */ CatelogId?: string; @@ -3148,6 +3612,14 @@ declare module PlayFabAdminModels { } + export interface GrantVirtualCurrencyContent { + /** Amount of currency to be granted to a player */ + CurrencyAmount: number; + /** Code of the currency to be granted to a player */ + CurrencyCode: string; + + } + export interface GrantVirtualCurrencySegmentAction { /** Virtual currency amount. */ Amount: number; @@ -3172,6 +3644,14 @@ declare module PlayFabAdminModels { } + export interface IncrementPlayerStatisticContent { + /** Amount(in whole number) to increase the player statistic by */ + StatisticChangeBy: number; + /** Name of the player statistic to be incremented */ + StatisticName: string; + + } + export interface IncrementPlayerStatisticSegmentAction { /** Increment value. */ IncrementValue: number; @@ -3304,23 +3784,32 @@ declare module PlayFabAdminModels { } - export interface ListBuildsRequest extends PlayFabModule.IPlayFabRequestCommon { + export interface ListOpenIdConnectionRequest extends PlayFabModule.IPlayFabRequestCommon { } - export interface ListBuildsResult extends PlayFabModule.IPlayFabResultCommon { - /** array of uploaded game server builds */ - Builds?: GetServerBuildInfoResult[]; + export interface ListOpenIdConnectionResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of Open ID Connections */ + Connections?: OpenIdConnection[]; } - export interface ListOpenIdConnectionRequest extends PlayFabModule.IPlayFabRequestCommon { + export interface ListPlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; } - export interface ListOpenIdConnectionResponse extends PlayFabModule.IPlayFabResultCommon { - /** The list of Open ID Connections */ - Connections?: OpenIdConnection[]; + export interface ListPlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** PlayFab unique identifier of the user whose properties are being returned. */ + PlayFabId?: string; + /** Player specific properties and their corresponding values for this title. */ + Properties?: CustomPropertyDetails[]; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; } @@ -3355,6 +3844,7 @@ declare module PlayFabAdminModels { } type LoginIdentityProvider = "Unknown" + | "PlayFab" | "Custom" | "GameCenter" @@ -3374,7 +3864,11 @@ declare module PlayFabAdminModels { | "FacebookInstantGames" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface LogStatement { /** Optional object accompanying the message as contextual information */ @@ -3420,73 +3914,6 @@ declare module PlayFabAdminModels { } - export interface ModifyMatchmakerGameModesRequest extends PlayFabModule.IPlayFabRequestCommon { - /** previously uploaded build version for which game modes are being specified */ - BuildVersion: string; - /** array of game modes (Note: this will replace all game modes for the indicated build version) */ - GameModes: GameModeInfo[]; - - } - - export interface ModifyMatchmakerGameModesResult extends PlayFabModule.IPlayFabResultCommon { - - } - - export interface ModifyServerBuildRequest extends PlayFabModule.IPlayFabRequestCommon { - /** array of regions where this build can used, when it is active */ - ActiveRegions?: string[]; - /** unique identifier of the previously uploaded build executable to be updated */ - BuildId: string; - /** appended to the end of the command line when starting game servers */ - CommandLineTemplate?: string; - /** developer comment(s) for this build */ - Comment?: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** path to the game server executable. Defaults to gameserver.exe */ - ExecutablePath?: string; - /** maximum number of game server instances that can run on a single host machine */ - MaxGamesPerHost: number; - /** - * minimum capacity of additional game server instances that can be started before the autoscaling service starts new host - * machines (given the number of current running host machines and game server instances) - */ - MinFreeGameSlots: number; - /** new timestamp */ - Timestamp?: string; - - } - - export interface ModifyServerBuildResult extends PlayFabModule.IPlayFabResultCommon { - /** array of regions where this build can used, when it is active */ - ActiveRegions?: string[]; - /** unique identifier for this build executable */ - BuildId?: string; - /** appended to the end of the command line when starting game servers */ - CommandLineTemplate?: string; - /** developer comment(s) for this build */ - Comment?: string; - /** path to the game server executable. Defaults to gameserver.exe */ - ExecutablePath?: string; - /** maximum number of game server instances that can run on a single host machine */ - MaxGamesPerHost: number; - /** - * minimum capacity of additional game server instances that can be started before the autoscaling service starts new host - * machines (given the number of current running host machines and game server instances) - */ - MinFreeGameSlots: number; - /** the current status of the build validation and processing steps */ - Status?: string; - /** time this build was last modified (or uploaded, if this build has never been modified) */ - Timestamp: string; - /** - * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a - * title has been selected. - */ - TitleId?: string; - - } - export interface ModifyUserVirtualCurrencyResult extends PlayFabModule.IPlayFabResultCommon { /** Balance of the virtual currency after modification. */ Balance: number; @@ -3510,6 +3937,12 @@ declare module PlayFabAdminModels { } + type NewsStatus = "None" + + | "Unpublished" + | "Published" + | "Archived"; + export interface OpenIdConnection { /** The client ID given by the ID provider. */ ClientId?: string; @@ -3519,8 +3952,12 @@ declare module PlayFabAdminModels { ConnectionId?: string; /** Shows if data about the connection will be loaded from the issuer's discovery document */ DiscoverConfiguration: boolean; + /** Ignore 'nonce' claim in identity tokens. */ + IgnoreNonce?: boolean; /** Information for an OpenID Connect provider. */ IssuerInformation?: OpenIdIssuerInformation; + /** Override the issuer name for user indexing and lookup. */ + IssuerOverride?: string; } @@ -3537,15 +3974,18 @@ declare module PlayFabAdminModels { } export interface PermissionStatement { - /** The action this statement effects. The only supported action is 'Execute'. */ - Action: string; + /** The action this statement effects. May only be '*'. This parameter is optional and defaults to '*' if omitted. */ + Action?: string; /** Additional conditions to be applied for API Resources. */ ApiConditions?: ApiCondition; /** A comment about the statement. Intended solely for bookkeeping and debugging. */ Comment?: string; /** The effect this statement will have. It could be either Allow or Deny */ Effect: string; - /** The principal this statement will effect. The only supported principal is '*'. */ + /** + * The principal this statement will effect. May be '*' to match all callers, or a JSON object targeting a specific entity + * type, e.g. {"title_player_account":"*"} for players or {"master_player_account":"*"} for master player accounts. + */ Principal: string; /** * The resource this statements effects. The only supported resources look like 'pfrn:api--*' for all apis, or @@ -3555,75 +3995,27 @@ declare module PlayFabAdminModels { } - export interface PlayerLinkedAccount { - /** Linked account's email */ - Email?: string; - /** Authentication platform */ - Platform?: string; - /** Platform user identifier */ - PlatformUserId?: string; - /** Linked account's username */ - Username?: string; + export interface PlayerChurnPredictionSegmentFilter { + /** Comparison */ + Comparison?: string; + /** RiskLevel */ + RiskLevel?: string; } - export interface PlayerLocation { - /** City of the player's geographic location. */ - City?: string; - /** The two-character continent code for this location */ - ContinentCode: string; - /** The two-character ISO 3166-1 country code for the country associated with the location */ - CountryCode: string; - /** Latitude coordinate of the player's geographic location. */ - Latitude?: number; - /** Longitude coordinate of the player's geographic location. */ - Longitude?: number; + export interface PlayerChurnPredictionTimeSegmentFilter { + /** Comparison */ + Comparison?: string; + /** DurationInDays */ + DurationInDays: number; } - export interface PlayerProfile { - /** Array of ad campaigns player has been attributed to */ - AdCampaignAttributions?: AdCampaignAttribution[]; - /** Image URL of the player's avatar. */ - AvatarUrl?: string; - /** Banned until UTC Date. If permanent ban this is set for 20 years after the original ban date. */ - BannedUntil?: string; - /** Array of contact email addresses associated with the player */ - ContactEmailAddresses?: ContactEmailInfo[]; - /** Player record created */ - Created?: string; - /** Player Display Name */ - DisplayName?: string; - /** Last login */ - LastLogin?: string; - /** Array of third party accounts linked to this player */ - LinkedAccounts?: PlayerLinkedAccount[]; - /** Dictionary of player's locations by type. */ - Locations?: { [key: string]: PlayerLocation }; - /** Player account origination */ - Origination?: string; - /** List of player variants for experimentation */ - PlayerExperimentVariants?: string[]; - /** PlayFab Player ID */ - PlayerId?: string; - /** Array of player statistics */ - PlayerStatistics?: PlayerStatistic[]; - /** Publisher this player belongs to */ - PublisherId?: string; - /** Array of configured push notification end points */ - PushNotificationRegistrations?: PushNotificationRegistration[]; - /** Dictionary of player's statistics using only the latest version's value */ - Statistics?: { [key: string]: number }; - /** List of player's tags for segmentation. */ - Tags?: string[]; - /** Title ID this profile applies to */ - TitleId?: string; - /** A sum of player's total purchases in USD across all currencies. */ - TotalValueToDateInUSD?: number; - /** Dictionary of player's total purchases by currency. */ - ValuesToDate?: { [key: string]: number }; - /** Dictionary of player's virtual currency balances */ - VirtualCurrencyBalances?: { [key: string]: number }; + export interface PlayerChurnPreviousPredictionSegmentFilter { + /** Comparison */ + Comparison?: string; + /** RiskLevel */ + RiskLevel?: string; } @@ -3640,7 +4032,11 @@ declare module PlayFabAdminModels { Created?: string; /** Player display name */ DisplayName?: string; - /** List of experiment variants for the player. */ + /** + * List of experiment variants for the player. Note that these variants are not guaranteed to be up-to-date when returned + * during login because the player profile is updated only after login. Instead, use the LoginResult.TreatmentAssignment + * property during login to get the correct variants and variables. + */ ExperimentVariants?: string[]; /** UTC time when the player most recently logged in to the title */ LastLogin?: string; @@ -3712,18 +4108,6 @@ declare module PlayFabAdminModels { } - export interface PlayerStatistic { - /** Statistic ID */ - Id?: string; - /** Statistic name */ - Name?: string; - /** Current statistic value */ - StatisticValue: number; - /** Statistic version (0 if not a versioned statistic) */ - StatisticVersion: number; - - } - export interface PlayerStatisticDefinition { /** the aggregation method to use in updating the statistic (defaults to last) */ AggregationMethod?: string; @@ -3756,17 +4140,37 @@ declare module PlayFabAdminModels { } - type PushNotificationPlatform = "ApplePushNotificationService" - | "GoogleCloudMessaging"; + export interface PolicyDiffSummary { + /** Number of new statements that would be added. */ + StatementsAdded: number; + /** Number of existing statements that would be removed. Only applicable when OverwritePolicy is true. */ + StatementsRemoved: number; + /** + * Number of existing statements that would be replaced by functionally equivalent incoming statements (e.g., same + * resource/effect/principal but different comment). + */ + StatementsReplaced: number; + /** Number of existing statements that would remain unchanged. */ + StatementsUnchanged: number; + /** Total number of statements in the resulting policy. */ + TotalResultingStatements: number; - export interface PushNotificationRegistration { - /** Notification configured endpoint */ - NotificationEndpointARN?: string; - /** Push notification platform */ - Platform?: string; + } + + export interface PushNotificationContent { + /** Text of message to send. */ + Message?: string; + /** Id of the push notification template. */ + PushNotificationTemplateId?: string; + /** Subject of message to send (may not be displayed in all platforms) */ + Subject?: string; } + type PushNotificationPlatform = "ApplePushNotificationService" + + | "GoogleCloudMessaging"; + export interface PushNotificationRegistrationModel { /** Notification configured endpoint */ NotificationEndpointARN?: string; @@ -3788,6 +4192,7 @@ declare module PlayFabAdminModels { } type PushSetupPlatform = "GCM" + | "APNS" | "APNS_SANDBOX"; @@ -3829,14 +4234,6 @@ declare module PlayFabAdminModels { } - type Region = "USCentral" - | "USEast" - | "EUWest" - | "Singapore" - | "Japan" - | "Brazil" - | "Australia"; - export interface RemovePlayerTagRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -3851,16 +4248,6 @@ declare module PlayFabAdminModels { } - export interface RemoveServerBuildRequest extends PlayFabModule.IPlayFabRequestCommon { - /** unique identifier of the previously uploaded build executable to be removed */ - BuildId: string; - - } - - export interface RemoveServerBuildResult extends PlayFabModule.IPlayFabResultCommon { - - } - export interface RemoveVirtualCurrencyTypesRequest extends PlayFabModule.IPlayFabRequestCommon { /** List of virtual currencies to delete */ VirtualCurrencies: VirtualCurrencyData[]; @@ -3908,6 +4295,7 @@ declare module PlayFabAdminModels { } type ResolutionOutcome = "Revoke" + | "Reinstate" | "Manual"; @@ -3947,6 +4335,7 @@ declare module PlayFabAdminModels { } type ResultTableNodeType = "ItemId" + | "TableId"; export interface RevokeAllBansForUserRequest extends PlayFabModule.IPlayFabRequestCommon { @@ -4060,6 +4449,7 @@ declare module PlayFabAdminModels { } type ScheduledTaskType = "CloudScript" + | "ActionsOnPlayerSegment" | "CloudScriptAzureFunctions" | "InsightsScheduledScaling"; @@ -4082,6 +4472,16 @@ declare module PlayFabAdminModels { AdCampaignFilter?: AdCampaignSegmentFilter; /** property for all player filter. */ AllPlayersFilter?: AllPlayersSegmentFilter; + /** Filter property for player churn risk level. */ + ChurnPredictionFilter?: ChurnPredictionSegmentFilter; + /** Filter property for boolean custom properties. */ + CustomPropertyBooleanFilter?: CustomPropertyBooleanSegmentFilter; + /** Filter property for datetime custom properties. */ + CustomPropertyDateTimeFilter?: CustomPropertyDateTimeSegmentFilter; + /** Filter property for numeric custom properties. */ + CustomPropertyNumericFilter?: CustomPropertyNumericSegmentFilter; + /** Filter property for string custom properties. */ + CustomPropertyStringFilter?: CustomPropertyStringSegmentFilter; /** Filter property for first login date. */ FirstLoginDateFilter?: FirstLoginDateSegmentFilter; /** Filter property for first login timespan. */ @@ -4096,6 +4496,12 @@ declare module PlayFabAdminModels { LinkedUserAccountHasEmailFilter?: LinkedUserAccountHasEmailSegmentFilter; /** Filter property for location. */ LocationFilter?: LocationSegmentFilter; + /** Filter property for current player churn value. */ + PlayerChurnPredictionFilter?: PlayerChurnPredictionSegmentFilter; + /** Filter property for player churn timespan. */ + PlayerChurnPredictionTimeFilter?: PlayerChurnPredictionTimeSegmentFilter; + /** Filter property for previous player churn value. */ + PlayerChurnPreviousPredictionFilter?: PlayerChurnPreviousPredictionSegmentFilter; /** Filter property for push notification. */ PushNotificationFilter?: PushNotificationSegmentFilter; /** Filter property for statistics. */ @@ -4114,6 +4520,7 @@ declare module PlayFabAdminModels { } type SegmentCountryCode = "AF" + | "AX" | "AL" | "DZ" @@ -4364,6 +4771,7 @@ declare module PlayFabAdminModels { | "ZW"; type SegmentCurrency = "AED" + | "AFN" | "ALL" | "AMD" @@ -4527,6 +4935,7 @@ declare module PlayFabAdminModels { | "ZWD"; type SegmentFilterComparison = "GreaterThan" + | "LessThan" | "EqualTo" | "NotEqualTo" @@ -4537,6 +4946,7 @@ declare module PlayFabAdminModels { | "NotContains"; type SegmentLoginIdentityProvider = "Unknown" + | "PlayFab" | "Custom" | "GameCenter" @@ -4556,7 +4966,8 @@ declare module PlayFabAdminModels { | "FacebookInstantGames" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames"; export interface SegmentModel { /** Segment description. */ @@ -4583,11 +4994,16 @@ declare module PlayFabAdminModels { } type SegmentPushNotificationDevicePlatform = "ApplePushNotificationService" + | "GoogleCloudMessaging"; export interface SegmentTrigger { + /** Add inventory item v2 segment trigger action. */ + AddInventoryItemsV2Action?: AddInventoryItemsV2SegmentAction; /** Ban player segment trigger action. */ BanPlayerAction?: BanPlayerSegmentAction; + /** Delete inventory item v2 segment trigger action. */ + DeleteInventoryItemsV2Action?: DeleteInventoryItemsV2SegmentAction; /** Delete player segment trigger action. */ DeletePlayerAction?: DeletePlayerSegmentAction; /** Delete player statistic segment trigger action. */ @@ -4606,6 +5022,8 @@ declare module PlayFabAdminModels { IncrementPlayerStatisticAction?: IncrementPlayerStatisticSegmentAction; /** Push notification segment trigger action. */ PushNotificationAction?: PushNotificationSegmentAction; + /** Subtract inventory item v2 segment trigger action. */ + SubtractInventoryItemsV2Action?: SubtractInventoryItemsV2SegmentAction; } @@ -4623,8 +5041,30 @@ declare module PlayFabAdminModels { } + export interface SendEmailContent { + /** The email template id of the email template to send. */ + EmailTemplateId: string; + + } + + export interface SetMembershipOverrideRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Expiration time for the membership in DateTime format, will override any subscription expirations. */ + ExpirationTime: string; + /** Id of the membership to apply the override expiration date to. */ + MembershipId: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface SetMembershipOverrideResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface SetPlayerSecretRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; @@ -4699,11 +5139,8 @@ declare module PlayFabAdminModels { Credential: string; /** for APNS, this is the PlatformPrincipal (SSL Certificate) */ Key?: string; - /** - * name of the application sending the message (application names must be made up of only uppercase and lowercase ASCII - * letters, numbers, underscores, hyphens, and periods, and must be between 1 and 256 characters long) - */ - Name: string; + /** This field is deprecated and any usage of this will cause the API to fail. */ + Name?: string; /** * replace any existing ARN with the newly generated one. If this is set to false, an error will be returned if * notifications have already setup for this platform. @@ -4734,6 +5171,7 @@ declare module PlayFabAdminModels { } type SourceType = "Admin" + | "BackEnd" | "GameClient" | "GameServer" @@ -4742,6 +5180,7 @@ declare module PlayFabAdminModels { | "API"; type StatisticAggregationMethod = "Last" + | "Min" | "Max" | "Sum"; @@ -4757,6 +5196,7 @@ declare module PlayFabAdminModels { } type StatisticResetIntervalOption = "Never" + | "Hour" | "Day" | "Week" @@ -4777,12 +5217,14 @@ declare module PlayFabAdminModels { } type StatisticVersionArchivalStatus = "NotScheduled" + | "Scheduled" | "Queued" | "InProgress" | "Complete"; type StatisticVersionStatus = "Active" + | "SnapshotPending" | "Snapshot" | "ArchivalPending" @@ -4834,6 +5276,7 @@ declare module PlayFabAdminModels { } type SubscriptionProviderStatus = "NoError" + | "Cancelled" | "UnknownError" | "BillingError" @@ -4842,6 +5285,34 @@ declare module PlayFabAdminModels { | "FreeTrial" | "PaymentPending"; + export interface SubtractInventoryItemsV2SegmentAction { + /** Amount of the item to removed from the player */ + Amount?: number; + /** The collection id for where the item will be removed from the player inventory */ + CollectionId?: string; + /** The duration in seconds to be removed from the subscription in the players inventory */ + DurationInSeconds?: number; + /** The id of item to be removed from the player */ + ItemId?: string; + /** The stack id for where the item will be removed from the player inventory */ + StackId?: string; + + } + + export interface SubtractInventoryItemV2Content { + /** Amount of the item to removed from the player */ + Amount?: number; + /** The collection id for where the item will be removed from the player inventory */ + CollectionId?: string; + /** The duration in seconds to be removed from the subscription in the players inventory */ + DurationInSeconds?: number; + /** The id of item to be removed from the player */ + ItemId?: string; + /** The stack id for where the item will be removed from the player inventory */ + StackId?: string; + + } + export interface SubtractUserVirtualCurrencyRequest extends PlayFabModule.IPlayFabRequestCommon { /** Amount to be subtracted from the user balance of the specified virtual currency. */ Amount: number; @@ -4893,6 +5364,7 @@ declare module PlayFabAdminModels { } type TaskInstanceStatus = "Succeeded" + | "Starting" | "InProgress" | "Failed" @@ -4900,6 +5372,7 @@ declare module PlayFabAdminModels { | "Stalled"; type TitleActivationStatus = "None" + | "ActivatedTitleKey" | "PendingSteam" | "ActivatedSteam" @@ -4933,12 +5406,12 @@ declare module PlayFabAdminModels { Expires?: string; /** The updated IP address for the ban. Null for no change. */ IPAddress?: string; - /** The updated MAC address for the ban. Null for no change. */ - MACAddress?: string; /** Whether to make this ban permanent. Set to true to make this ban permanent. This will not modify Active state. */ Permanent?: boolean; /** The updated reason for the ban to be updated. Maximum 140 characters. Null for no change. */ Reason?: string; + /** The updated family type of the user that should be included in the ban. Null for no change. */ + UserFamilyType?: string; } @@ -5003,10 +5476,40 @@ declare module PlayFabAdminModels { ClientSecret?: string; /** A name for the connection that identifies it within the title. */ ConnectionId: string; + /** Ignore 'nonce' claim in identity tokens. */ + IgnoreNonce?: boolean; /** The issuer URL or discovery document URL to read issuer information from */ IssuerDiscoveryUrl?: string; /** Manually specified information for an OpenID Connect issuer. */ IssuerInformation?: OpenIdIssuerInformation; + /** Override the issuer name for user indexing and lookup. */ + IssuerOverride?: string; + + } + + export interface UpdatePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Optional field used for concurrency control. One can ensure that the update operation will only be performed if the + * player's properties have not been updated by any other clients since last the version. + */ + ExpectedPropertiesVersion?: number; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** Collection of properties to be set for a player. */ + Properties: UpdateProperty[]; + + } + + export interface UpdatePlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** PlayFab unique identifier of the user whose properties were updated. */ + PlayFabId?: string; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; } @@ -5046,8 +5549,11 @@ declare module PlayFabAdminModels { export interface UpdatePolicyRequest extends PlayFabModule.IPlayFabRequestCommon { /** Whether to overwrite or append to the existing policy. */ OverwritePolicy: boolean; - /** The name of the policy being updated. Only supported name is 'ApiPolicy' */ - PolicyName: string; + /** + * The name of the policy being updated. Only 'ApiPolicy' is supported. This parameter is optional and defaults to + * 'ApiPolicy' if omitted. + */ + PolicyName?: string; /** Version of the policy to update. Must be the latest (as returned by GetPolicy). */ PolicyVersion: number; /** The new statements to include in the policy. */ @@ -5060,6 +5566,19 @@ declare module PlayFabAdminModels { PolicyName?: string; /** The statements included in the new version of the policy. */ Statements?: PermissionStatement[]; + /** + * Optional warnings about policy statements that may not have the intended effect. For example, resource paths that don't + * match any known API endpoint. The policy update still succeeds when warnings are present. + */ + Warnings?: string[]; + + } + + export interface UpdateProperty { + /** Name of the custom property. Can contain Unicode letters and digits. They are limited in size. */ + Name: string; + /** Value of the custom property. Limited to booleans, numbers, and strings. */ + Value: any; } @@ -5200,6 +5719,8 @@ declare module PlayFabAdminModels { AndroidDeviceInfo?: UserAndroidDeviceInfo; /** Sign in with Apple account information, if an Apple account has been linked */ AppleAccountInfo?: UserAppleIdInfo; + /** Battle.net account information, if a Battle.net account has been linked */ + BattleNetAccountInfo?: UserBattleNetInfo; /** Timestamp indicating when the user account was created */ Created: string; /** Custom ID information, if a custom ID has been assigned */ @@ -5212,6 +5733,8 @@ declare module PlayFabAdminModels { GameCenterInfo?: UserGameCenterInfo; /** User Google account information, if a Google account has been linked */ GoogleInfo?: UserGoogleInfo; + /** User Google Play Games account information, if a Google Play Games account has been linked */ + GooglePlayGamesInfo?: UserGooglePlayGamesInfo; /** User iOS device information, if an iOS device has been linked */ IosDeviceInfo?: UserIosDeviceInfo; /** User Kongregate account information, if a Kongregate account has been linked */ @@ -5226,8 +5749,10 @@ declare module PlayFabAdminModels { PlayFabId?: string; /** Personal information for the user which is considered more sensitive */ PrivateInfo?: UserPrivateAccountInfo; - /** User PSN account information, if a PSN account has been linked */ + /** User PlayStation :tm: Network account information, if a PlayStation :tm: Network account has been linked */ PsnInfo?: UserPsnInfo; + /** Server Custom ID information, if a server custom ID has been assigned */ + ServerCustomIdInfo?: UserServerCustomIdInfo; /** User Steam information, if a Steam account has been linked */ SteamInfo?: UserSteamInfo; /** Title-specific information for the user account */ @@ -5236,8 +5761,6 @@ declare module PlayFabAdminModels { TwitchInfo?: UserTwitchInfo; /** User account name in the PlayFab service */ Username?: string; - /** Windows Hello account information, if a Windows Hello account has been linked */ - WindowsHelloInfo?: UserWindowsHelloInfo; /** User XBox account information, if a XBox account has been linked */ XboxInfo?: UserXboxInfo; @@ -5255,6 +5778,14 @@ declare module PlayFabAdminModels { } + export interface UserBattleNetInfo { + /** Battle.net identifier */ + BattleNetAccountId?: string; + /** Battle.net display name */ + BattleNetBattleTag?: string; + + } + export interface UserCustomIdInfo { /** Custom ID */ CustomId?: string; @@ -5262,6 +5793,7 @@ declare module PlayFabAdminModels { } type UserDataPermission = "Private" + | "Public"; export interface UserDataRecord { @@ -5291,6 +5823,11 @@ declare module PlayFabAdminModels { } + type UserFamilyType = "None" + + | "Xbox" + | "Steam"; + export interface UserGameCenterInfo { /** Gamecenter identifier */ GameCenterId?: string; @@ -5311,6 +5848,16 @@ declare module PlayFabAdminModels { } + export interface UserGooglePlayGamesInfo { + /** Avatar image url of the Google Play Games player */ + GooglePlayGamesPlayerAvatarImageUrl?: string; + /** Display name of the Google Play Games player */ + GooglePlayGamesPlayerDisplayName?: string; + /** Google Play Games player ID */ + GooglePlayGamesPlayerId?: string; + + } + export interface UserIosDeviceInfo { /** iOS device ID */ IosDeviceId?: string; @@ -5348,6 +5895,7 @@ declare module PlayFabAdminModels { } type UserOrigination = "Organic" + | "Steam" | "Google" | "Amazon" @@ -5364,13 +5912,16 @@ declare module PlayFabAdminModels { | "XboxLive" | "Parse" | "Twitch" - | "WindowsHello" | "ServerCustomId" | "NintendoSwitchDeviceId" | "FacebookInstantGamesId" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserOriginationSegmentFilter { /** User login provider. */ @@ -5385,13 +5936,19 @@ declare module PlayFabAdminModels { } export interface UserPsnInfo { - /** PSN account ID */ + /** PlayStation :tm: Network account ID */ PsnAccountId?: string; - /** PSN online ID */ + /** PlayStation :tm: Network online ID */ PsnOnlineId?: string; } + export interface UserServerCustomIdInfo { + /** Custom ID */ + CustomId?: string; + + } + export interface UserSteamInfo { /** what stage of game ownership the user is listed as being in, from Steam */ SteamActivationStatus?: string; @@ -5440,17 +5997,44 @@ declare module PlayFabAdminModels { } - export interface UserWindowsHelloInfo { - /** Windows Hello Device Name */ - WindowsHelloDeviceName?: string; - /** Windows Hello Public Key Hash */ - WindowsHelloPublicKeyHash?: string; - - } - export interface UserXboxInfo { /** XBox user ID */ XboxUserId?: string; + /** XBox user sandbox */ + XboxUserSandbox?: string; + + } + + export interface ValidateApiPolicyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Whether the validation should simulate overwriting or appending to the existing policy. */ + OverwritePolicy: boolean; + /** + * The name of the policy to validate. Only 'ApiPolicy' is supported. This parameter is optional and defaults to + * 'ApiPolicy' if omitted. + */ + PolicyName?: string; + /** Version of the policy to validate against. Must be the latest (as returned by GetPolicy). */ + PolicyVersion: number; + /** The statements to validate. */ + Statements: PermissionStatement[]; + + } + + export interface ValidateApiPolicyResponse extends PlayFabModule.IPlayFabResultCommon { + /** Summary of what would change compared to the current policy. */ + Diff?: PolicyDiffSummary; + /** Whether the proposed policy is valid and would be accepted by UpdatePolicy. */ + IsValid: boolean; + /** The name of the policy validated. */ + PolicyName?: string; + /** Policy version. */ + PolicyVersion: number; + /** The full set of statements that would result from applying this update. */ + ResultingStatements?: PermissionStatement[]; + /** Validation errors that would cause UpdatePolicy to reject this request. Empty if IsValid is true. */ + ValidationErrors?: string[]; + /** Non-blocking warnings about the proposed policy (e.g., near statement limit, duplicate statements). */ + Warnings?: string[]; } diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabAuthenticationApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabAuthenticationApi.d.ts index 163bf7f2..58381549 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabAuthenticationApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabAuthenticationApi.d.ts @@ -4,22 +4,63 @@ declare module PlayFabAuthenticationModule { export interface IPlayFabAuthentication { ForgetAllCredentials(): void; + /** + * Create a game_server entity token and return a new or existing game_server entity. + * https://docs.microsoft.com/rest/api/playfab/authentication/authentication/authenticategameserverwithcustomid + */ + AuthenticateGameServerWithCustomId(request: PlayFabAuthenticationModels.AuthenticateCustomIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Delete a game_server entity. + * https://docs.microsoft.com/rest/api/playfab/authentication/authentication/delete + */ + Delete(request: PlayFabAuthenticationModels.DeleteRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Method to exchange a legacy AuthenticationTicket or title SecretKey for an Entity Token or to refresh a still valid * Entity Token. * https://docs.microsoft.com/rest/api/playfab/authentication/authentication/getentitytoken */ - GetEntityToken(request: PlayFabAuthenticationModels.GetEntityTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetEntityToken(request: PlayFabAuthenticationModels.GetEntityTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Method for a server to validate a client provided EntityToken. Only callable by the title entity. * https://docs.microsoft.com/rest/api/playfab/authentication/authentication/validateentitytoken */ - ValidateEntityToken(request: PlayFabAuthenticationModels.ValidateEntityTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ValidateEntityToken(request: PlayFabAuthenticationModels.ValidateEntityTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } declare module PlayFabAuthenticationModels { + export interface AuthenticateCustomIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * The customId used to create and retrieve game_server entity tokens. This is unique at the title level. CustomId must be + * between 32 and 100 characters. + */ + CustomId: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + + } + + export interface AuthenticateCustomIdResult extends PlayFabModule.IPlayFabResultCommon { + /** The token generated used to set X-EntityToken for game_server calls. */ + EntityToken?: EntityTokenResponse; + /** True if the account was newly created on this authentication. */ + NewlyCreated: boolean; + + } + + export interface DeleteRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The game_server entity to be removed. */ + Entity: EntityKey; + + } + + export interface EmptyResponse extends PlayFabModule.IPlayFabResultCommon { + + } + export interface EntityKey { /** Unique ID of the entity. */ Id: string; @@ -44,10 +85,20 @@ declare module PlayFabAuthenticationModels { } + export interface EntityTokenResponse { + /** The entity id and type. */ + Entity?: EntityKey; + /** The token used to set X-EntityToken for all entity based API calls. */ + EntityToken?: string; + /** The time the token will expire, if it is an expiring token, in UTC. */ + TokenExpiration?: string; + + } + export interface GetEntityTokenRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; } @@ -63,10 +114,19 @@ declare module PlayFabAuthenticationModels { } type IdentifiedDeviceType = "Unknown" + | "XboxOne" - | "Scarlett"; + | "Scarlett" + | "WindowsOneCore" + | "WindowsOneCoreMobile" + | "Win32" + | "android" + | "iOS" + | "PlayStation" + | "Nintendo"; type LoginIdentityProvider = "Unknown" + | "PlayFab" | "Custom" | "GameCenter" @@ -86,7 +146,11 @@ declare module PlayFabAuthenticationModels { | "FacebookInstantGames" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface ValidateEntityTokenRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ @@ -103,6 +167,8 @@ declare module PlayFabAuthenticationModels { IdentifiedDeviceType?: string; /** The identity provider for this entity, for the given login */ IdentityProvider?: string; + /** The ID issued by the identity provider, e.g. a XUID on Xbox Live */ + IdentityProviderIssuedId?: string; /** The lineage of this profile. */ Lineage?: EntityLineage; diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabClientApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabClientApi.d.ts index a5f4b62d..3819a54d 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabClientApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabClientApi.d.ts @@ -12,93 +12,97 @@ declare module PlayFabClientModule { * items will be swapped between the two players' inventories. * https://docs.microsoft.com/rest/api/playfab/client/trading/accepttrade */ - AcceptTrade(request: PlayFabClientModels.AcceptTradeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AcceptTrade(request: PlayFabClientModels.AcceptTradeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds the PlayFab user, based upon a match against a supplied unique identifier, to the friend list of the local user. At * least one of FriendPlayFabId,FriendUsername,FriendEmail, or FriendTitleDisplayName should be initialized. * https://docs.microsoft.com/rest/api/playfab/client/friend-list-management/addfriend */ - AddFriend(request: PlayFabClientModels.AddFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddFriend(request: PlayFabClientModels.AddFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds the specified generic service identifier to the player's PlayFab account. This is designed to allow for a PlayFab * ID lookup of any arbitrary service identifier a title wants to add. This identifier should never be used as * authentication credentials, as the intent is that it is easily accessible by other players. * https://docs.microsoft.com/rest/api/playfab/client/account-management/addgenericid */ - AddGenericID(request: PlayFabClientModels.AddGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddGenericID(request: PlayFabClientModels.AddGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds or updates a contact email to the player's profile. * https://docs.microsoft.com/rest/api/playfab/client/account-management/addorupdatecontactemail */ - AddOrUpdateContactEmail(request: PlayFabClientModels.AddOrUpdateContactEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddOrUpdateContactEmail(request: PlayFabClientModels.AddOrUpdateContactEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds users to the set of those able to update both the shared data, as well as the set of users in the group. Only users * in the group can add new members. Shared Groups are designed for sharing data between a very small number of players, * please see our guide: https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/addsharedgroupmembers */ - AddSharedGroupMembers(request: PlayFabClientModels.AddSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddSharedGroupMembers(request: PlayFabClientModels.AddSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds playfab username/password auth to an existing account created via an anonymous auth method, e.g. automatic device * ID login. * https://docs.microsoft.com/rest/api/playfab/client/account-management/addusernamepassword */ - AddUsernamePassword(request: PlayFabClientModels.AddUsernamePasswordRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddUsernamePassword(request: PlayFabClientModels.AddUsernamePasswordRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Increments the user's balance of the specified virtual currency by the stated amount + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Increments the user's balance of the specified virtual currency by the stated amount * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/adduservirtualcurrency */ - AddUserVirtualCurrency(request: PlayFabClientModels.AddUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddUserVirtualCurrency(request: PlayFabClientModels.AddUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Registers the Android device to receive push notifications * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/androiddevicepushnotificationregistration */ - AndroidDevicePushNotificationRegistration(request: PlayFabClientModels.AndroidDevicePushNotificationRegistrationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AndroidDevicePushNotificationRegistration(request: PlayFabClientModels.AndroidDevicePushNotificationRegistrationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Attributes an install for advertisment. * https://docs.microsoft.com/rest/api/playfab/client/advertising/attributeinstall */ - AttributeInstall(request: PlayFabClientModels.AttributeInstallRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AttributeInstall(request: PlayFabClientModels.AttributeInstallRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Cancels an open trade (one that has not yet been accepted or cancelled). Note that only the player who created the trade * can cancel it via this API call, to prevent griefing of the trade system (cancelling trades in order to prevent other * players from accepting them, for trades that can be claimed by more than one player). * https://docs.microsoft.com/rest/api/playfab/client/trading/canceltrade */ - CancelTrade(request: PlayFabClientModels.CancelTradeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CancelTrade(request: PlayFabClientModels.CancelTradeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Confirms with the payment provider that the purchase was approved (if applicable) and adjusts inventory and virtual - * currency balances as appropriate + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Confirms with the payment provider that the purchase was approved (if applicable) and adjusts inventory and + * virtual currency balances as appropriate * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/confirmpurchase */ - ConfirmPurchase(request: PlayFabClientModels.ConfirmPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ConfirmPurchase(request: PlayFabClientModels.ConfirmPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Consume uses of a consumable item. When all uses are consumed, it will be removed from the player's inventory. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Consume uses of a consumable item. When all uses are consumed, it will be removed from the player's + * inventory. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/consumeitem */ - ConsumeItem(request: PlayFabClientModels.ConsumeItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ConsumeItem(request: PlayFabClientModels.ConsumeItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Grants the player's current entitlements from Microsoft Store's Collection API * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/consumemicrosoftstoreentitlements */ - ConsumeMicrosoftStoreEntitlements(request: PlayFabClientModels.ConsumeMicrosoftStoreEntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ConsumeMicrosoftStoreEntitlements(request: PlayFabClientModels.ConsumeMicrosoftStoreEntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Checks for any new PS5 entitlements. If any are found, they are consumed (if they're consumables) and added as PlayFab - * items + * Checks for any new consumable entitlements. If any are found, they are consumed (if they're consumables) and added as + * PlayFab items * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/consumeps5entitlements */ - ConsumePS5Entitlements(request: PlayFabClientModels.ConsumePS5EntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ConsumePS5Entitlements(request: PlayFabClientModels.ConsumePS5EntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Checks for any new consumable entitlements. If any are found, they are consumed and added as PlayFab items * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/consumepsnentitlements */ - ConsumePSNEntitlements(request: PlayFabClientModels.ConsumePSNEntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ConsumePSNEntitlements(request: PlayFabClientModels.ConsumePSNEntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Grants the player's current entitlements from Xbox Live, consuming all availble items in Xbox and granting them to the * player's PlayFab inventory. This call is idempotent and will not grant previously granted items to the player. * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/consumexboxentitlements */ - ConsumeXboxEntitlements(request: PlayFabClientModels.ConsumeXboxEntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ConsumeXboxEntitlements(request: PlayFabClientModels.ConsumeXboxEntitlementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Requests the creation of a shared group object, containing key/value pairs which may be updated by all members of the * group. Upon creation, the current user will be the only member of the group. Shared Groups are designed for sharing data @@ -106,58 +110,66 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/createsharedgroup */ - CreateSharedGroup(request: PlayFabClientModels.CreateSharedGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateSharedGroup(request: PlayFabClientModels.CreateSharedGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Executes a CloudScript function, with the 'currentPlayerId' set to the PlayFab ID of the authenticated player. + * Deletes title-specific custom properties for a player + * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/deleteplayercustomproperties + */ + DeletePlayerCustomProperties(request: PlayFabClientModels.DeletePlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Executes a CloudScript function, with the 'currentPlayerId' set to the PlayFab ID of the authenticated player. The + * PlayFab ID is the entity ID of the player's master_player_account entity. * https://docs.microsoft.com/rest/api/playfab/client/server-side-cloud-script/executecloudscript */ - ExecuteCloudScript(request: PlayFabClientModels.ExecuteCloudScriptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ExecuteCloudScript(request: PlayFabClientModels.ExecuteCloudScriptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the user's PlayFab account details * https://docs.microsoft.com/rest/api/playfab/client/account-management/getaccountinfo */ - GetAccountInfo(request: PlayFabClientModels.GetAccountInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetAccountInfo(request: PlayFabClientModels.GetAccountInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Returns a list of ad placements and a reward for each * https://docs.microsoft.com/rest/api/playfab/client/advertising/getadplacements */ - GetAdPlacements(request: PlayFabClientModels.GetAdPlacementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetAdPlacements(request: PlayFabClientModels.GetAdPlacementsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all of the characters that belong to a specific user. CharacterIds are not globally unique; characterId must be * evaluated with the parent PlayFabId to guarantee uniqueness. * https://docs.microsoft.com/rest/api/playfab/client/characters/getalluserscharacters */ - GetAllUsersCharacters(request: PlayFabClientModels.ListUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetAllUsersCharacters(request: PlayFabClientModels.ListUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the specified version of the title's catalog of virtual goods, including all defined properties + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the specified version of the title's catalog of virtual goods, including all defined properties * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/getcatalogitems */ - GetCatalogItems(request: PlayFabClientModels.GetCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCatalogItems(request: PlayFabClientModels.GetCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the character which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/character-data/getcharacterdata */ - GetCharacterData(request: PlayFabClientModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterData(request: PlayFabClientModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the specified character's current inventory of virtual goods + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the specified character's current inventory of virtual goods * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/getcharacterinventory */ - GetCharacterInventory(request: PlayFabClientModels.GetCharacterInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterInventory(request: PlayFabClientModels.GetCharacterInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked characters for the given statistic, starting from the indicated point in the leaderboard * https://docs.microsoft.com/rest/api/playfab/client/characters/getcharacterleaderboard */ - GetCharacterLeaderboard(request: PlayFabClientModels.GetCharacterLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterLeaderboard(request: PlayFabClientModels.GetCharacterLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the character which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/client/character-data/getcharacterreadonlydata */ - GetCharacterReadOnlyData(request: PlayFabClientModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterReadOnlyData(request: PlayFabClientModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the details of all title-specific statistics for the user * https://docs.microsoft.com/rest/api/playfab/client/characters/getcharacterstatistics */ - GetCharacterStatistics(request: PlayFabClientModels.GetCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterStatistics(request: PlayFabClientModels.GetCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * This API retrieves a pre-signed URL for accessing a content file for the title. A subsequent HTTP GET to the returned * URL will attempt to download the content. A HEAD query to the returned URL will attempt to retrieve the metadata of the @@ -167,180 +179,212 @@ declare module PlayFabClientModule { * please be aware that the Content service is specifically PlayFab's CDN offering, for which standard CDN rates apply. * https://docs.microsoft.com/rest/api/playfab/client/content/getcontentdownloadurl */ - GetContentDownloadUrl(request: PlayFabClientModels.GetContentDownloadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Get details about all current running game servers matching the given parameters. - * https://docs.microsoft.com/rest/api/playfab/client/matchmaking/getcurrentgames - */ - GetCurrentGames(request: PlayFabClientModels.CurrentGamesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetContentDownloadUrl(request: PlayFabClientModels.GetContentDownloadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked friends of the current player for the given statistic, starting from the indicated point in * the leaderboard * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getfriendleaderboard */ - GetFriendLeaderboard(request: PlayFabClientModels.GetFriendLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetFriendLeaderboard(request: PlayFabClientModels.GetFriendLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked friends of the current player for the given statistic, centered on the requested PlayFab * user. If PlayFabId is empty or null will return currently logged in user. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getfriendleaderboardaroundplayer */ - GetFriendLeaderboardAroundPlayer(request: PlayFabClientModels.GetFriendLeaderboardAroundPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetFriendLeaderboardAroundPlayer(request: PlayFabClientModels.GetFriendLeaderboardAroundPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the current friend list for the local user, constrained to users who have PlayFab accounts. Friends from * linked accounts (Facebook, Steam) are also included. You may optionally exclude some linked services' friends. * https://docs.microsoft.com/rest/api/playfab/client/friend-list-management/getfriendslist */ - GetFriendsList(request: PlayFabClientModels.GetFriendsListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Get details about the regions hosting game servers matching the given parameters. - * https://docs.microsoft.com/rest/api/playfab/client/matchmaking/getgameserverregions - */ - GetGameServerRegions(request: PlayFabClientModels.GameServerRegionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetFriendsList(request: PlayFabClientModels.GetFriendsListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked users for the given statistic, starting from the indicated point in the leaderboard * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getleaderboard */ - GetLeaderboard(request: PlayFabClientModels.GetLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboard(request: PlayFabClientModels.GetLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked characters for the given statistic, centered on the requested Character ID * https://docs.microsoft.com/rest/api/playfab/client/characters/getleaderboardaroundcharacter */ - GetLeaderboardAroundCharacter(request: PlayFabClientModels.GetLeaderboardAroundCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboardAroundCharacter(request: PlayFabClientModels.GetLeaderboardAroundCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked users for the given statistic, centered on the requested player. If PlayFabId is empty or * null will return currently logged in user. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getleaderboardaroundplayer */ - GetLeaderboardAroundPlayer(request: PlayFabClientModels.GetLeaderboardAroundPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboardAroundPlayer(request: PlayFabClientModels.GetLeaderboardAroundPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of all of the user's characters for the given statistic. * https://docs.microsoft.com/rest/api/playfab/client/characters/getleaderboardforusercharacters */ - GetLeaderboardForUserCharacters(request: PlayFabClientModels.GetLeaderboardForUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboardForUserCharacters(request: PlayFabClientModels.GetLeaderboardForUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * For payments flows where the provider requires playfab (the fulfiller) to initiate the transaction, but the client - * completes the rest of the flow. In the Xsolla case, the token returned here will be passed to Xsolla by the client to - * create a cart. Poll GetPurchase using the returned OrderId once you've completed the payment. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ For payments flows where the provider requires playfab (the fulfiller) to initiate the transaction, but the + * client completes the rest of the flow. In the Xsolla case, the token returned here will be passed to Xsolla by the + * client to create a cart. Poll GetPurchase using the returned OrderId once you've completed the payment. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/getpaymenttoken */ - GetPaymentToken(request: PlayFabClientModels.GetPaymentTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPaymentToken(request: PlayFabClientModels.GetPaymentTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets a Photon custom authentication token that can be used to securely join the player into a Photon room. See * https://docs.microsoft.com/gaming/playfab/features/multiplayer/photon/quickstart for more details. * https://docs.microsoft.com/rest/api/playfab/client/authentication/getphotonauthenticationtoken */ - GetPhotonAuthenticationToken(request: PlayFabClientModels.GetPhotonAuthenticationTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPhotonAuthenticationToken(request: PlayFabClientModels.GetPhotonAuthenticationTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves all of the user's different kinds of info. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayercombinedinfo */ - GetPlayerCombinedInfo(request: PlayFabClientModels.GetPlayerCombinedInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerCombinedInfo(request: PlayFabClientModels.GetPlayerCombinedInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves a title-specific custom property value for a player. + * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getplayercustomproperty + */ + GetPlayerCustomProperty(request: PlayFabClientModels.GetPlayerCustomPropertyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the player's profile * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayerprofile */ - GetPlayerProfile(request: PlayFabClientModels.GetPlayerProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerProfile(request: PlayFabClientModels.GetPlayerProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * List all segments that a player currently belongs to at this moment in time. * https://docs.microsoft.com/rest/api/playfab/client/playstream/getplayersegments */ - GetPlayerSegments(request: PlayFabClientModels.GetPlayerSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerSegments(request: PlayFabClientModels.GetPlayerSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the indicated statistics (current version and values for all statistics, if none are specified), for the local * player. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getplayerstatistics */ - GetPlayerStatistics(request: PlayFabClientModels.GetPlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerStatistics(request: PlayFabClientModels.GetPlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the information on the available versions of the specified statistic. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getplayerstatisticversions */ - GetPlayerStatisticVersions(request: PlayFabClientModels.GetPlayerStatisticVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerStatisticVersions(request: PlayFabClientModels.GetPlayerStatisticVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get all tags with a given Namespace (optional) from a player profile. * https://docs.microsoft.com/rest/api/playfab/client/playstream/getplayertags */ - GetPlayerTags(request: PlayFabClientModels.GetPlayerTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerTags(request: PlayFabClientModels.GetPlayerTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets all trades the player has either opened or accepted, optionally filtered by trade status. * https://docs.microsoft.com/rest/api/playfab/client/trading/getplayertrades */ - GetPlayerTrades(request: PlayFabClientModels.GetPlayerTradesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerTrades(request: PlayFabClientModels.GetPlayerTradesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Battle.net account identifiers. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfrombattlenetaccountids + */ + GetPlayFabIDsFromBattleNetAccountIds(request: PlayFabClientModels.GetPlayFabIDsFromBattleNetAccountIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Facebook identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromfacebookids */ - GetPlayFabIDsFromFacebookIDs(request: PlayFabClientModels.GetPlayFabIDsFromFacebookIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromFacebookIDs(request: PlayFabClientModels.GetPlayFabIDsFromFacebookIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Facebook Instant Game identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromfacebookinstantgamesids */ - GetPlayFabIDsFromFacebookInstantGamesIds(request: PlayFabClientModels.GetPlayFabIDsFromFacebookInstantGamesIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromFacebookInstantGamesIds(request: PlayFabClientModels.GetPlayFabIDsFromFacebookInstantGamesIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Game Center identifiers (referenced in the Game Center * Programming Guide as the Player Identifier). * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromgamecenterids */ - GetPlayFabIDsFromGameCenterIDs(request: PlayFabClientModels.GetPlayFabIDsFromGameCenterIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromGameCenterIDs(request: PlayFabClientModels.GetPlayFabIDsFromGameCenterIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of generic service identifiers. A generic identifier is the * service name plus the service-specific ID for the player, as specified by the title when the generic identifier was * added to the player account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromgenericids */ - GetPlayFabIDsFromGenericIDs(request: PlayFabClientModels.GetPlayFabIDsFromGenericIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromGenericIDs(request: PlayFabClientModels.GetPlayFabIDsFromGenericIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Google identifiers. The Google identifiers are the IDs for * the user accounts, available as "id" in the Google+ People API calls. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromgoogleids */ - GetPlayFabIDsFromGoogleIDs(request: PlayFabClientModels.GetPlayFabIDsFromGoogleIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromGoogleIDs(request: PlayFabClientModels.GetPlayFabIDsFromGoogleIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Google Play Games identifiers. The Google Play Games + * identifiers are the IDs for the user accounts, available as "playerId" in the Google Play Games Services - Players API + * calls. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromgoogleplaygamesplayerids + */ + GetPlayFabIDsFromGooglePlayGamesPlayerIDs(request: PlayFabClientModels.GetPlayFabIDsFromGooglePlayGamesPlayerIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Kongregate identifiers. The Kongregate identifiers are the * IDs for the user accounts, available as "user_id" from the Kongregate API methods(ex: * http://developers.kongregate.com/docs/client/getUserId). * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromkongregateids */ - GetPlayFabIDsFromKongregateIDs(request: PlayFabClientModels.GetPlayFabIDsFromKongregateIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromKongregateIDs(request: PlayFabClientModels.GetPlayFabIDsFromKongregateIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Nintendo Service Account identifiers. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromnintendoserviceaccountids + */ + GetPlayFabIDsFromNintendoServiceAccountIds(request: PlayFabClientModels.GetPlayFabIDsFromNintendoServiceAccountIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the unique PlayFab identifiers for the given set of Nintendo Switch identifiers. + * Retrieves the unique PlayFab identifiers for the given set of Nintendo Switch Device identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromnintendoswitchdeviceids */ - GetPlayFabIDsFromNintendoSwitchDeviceIds(request: PlayFabClientModels.GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromNintendoSwitchDeviceIds(request: PlayFabClientModels.GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the unique PlayFab identifiers for the given set of PlayStation Network identifiers. + * Retrieves the unique PlayFab identifiers for the given set of OpenId subject identifiers. A OpenId identifier is the + * service name plus the service-specific ID for the player, as specified by the title when the OpenId identifier was added + * to the player account. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromopenidsubjectidentifiers + */ + GetPlayFabIDsFromOpenIdSubjectIdentifiers(request: PlayFabClientModels.GetPlayFabIDsFromOpenIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of PlayStation :tm: Network identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfrompsnaccountids */ - GetPlayFabIDsFromPSNAccountIDs(request: PlayFabClientModels.GetPlayFabIDsFromPSNAccountIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromPSNAccountIDs(request: PlayFabClientModels.GetPlayFabIDsFromPSNAccountIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of PlayStation :tm: Network identifiers. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfrompsnonlineids + */ + GetPlayFabIDsFromPSNOnlineIDs(request: PlayFabClientModels.GetPlayFabIDsFromPSNOnlineIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Steam identifiers. The Steam identifiers are the profile * IDs for the user accounts, available as SteamId in the Steamworks Community API calls. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromsteamids */ - GetPlayFabIDsFromSteamIDs(request: PlayFabClientModels.GetPlayFabIDsFromSteamIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromSteamIDs(request: PlayFabClientModels.GetPlayFabIDsFromSteamIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Steam identifiers. The Steam identifiers are persona + * names. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromsteamnames + */ + GetPlayFabIDsFromSteamNames(request: PlayFabClientModels.GetPlayFabIDsFromSteamNamesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Twitch identifiers. The Twitch identifiers are the IDs for * the user accounts, available as "_id" from the Twitch API methods (ex: * https://github.com/justintv/Twitch-API/blob/master/v3_resources/users.md#get-usersuser). * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromtwitchids */ - GetPlayFabIDsFromTwitchIDs(request: PlayFabClientModels.GetPlayFabIDsFromTwitchIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromTwitchIDs(request: PlayFabClientModels.GetPlayFabIDsFromTwitchIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of XboxLive identifiers. * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromxboxliveids */ - GetPlayFabIDsFromXboxLiveIDs(request: PlayFabClientModels.GetPlayFabIDsFromXboxLiveIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromXboxLiveIDs(request: PlayFabClientModels.GetPlayFabIDsFromXboxLiveIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom publisher settings * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/getpublisherdata */ - GetPublisherData(request: PlayFabClientModels.GetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPublisherData(request: PlayFabClientModels.GetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves a purchase along with its current PlayFab status. Returns inventory items from the purchase that are still - * active. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves a purchase along with its current PlayFab status. Returns inventory items from the purchase that + * are still active. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/getpurchase */ - GetPurchase(request: PlayFabClientModels.GetPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPurchase(request: PlayFabClientModels.GetPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves data stored in a shared group object, as well as the list of members in the group. Non-members of the group * may use this to retrieve group data, including membership, but they will not receive data for keys marked as private. @@ -348,98 +392,100 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/getsharedgroupdata */ - GetSharedGroupData(request: PlayFabClientModels.GetSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetSharedGroupData(request: PlayFabClientModels.GetSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the set of items defined for the specified store, including all prices defined + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the set of items defined for the specified store, including all prices defined * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/getstoreitems */ - GetStoreItems(request: PlayFabClientModels.GetStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetStoreItems(request: PlayFabClientModels.GetStoreItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the current server time * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/gettime */ - GetTime(request: PlayFabClientModels.GetTimeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTime(request: PlayFabClientModels.GetTimeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom title settings * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/gettitledata */ - GetTitleData(request: PlayFabClientModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleData(request: PlayFabClientModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title news feed, as configured in the developer portal * https://docs.microsoft.com/rest/api/playfab/client/title-wide-data-management/gettitlenews */ - GetTitleNews(request: PlayFabClientModels.GetTitleNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleNews(request: PlayFabClientModels.GetTitleNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Returns the title's base 64 encoded RSA CSP blob. * https://docs.microsoft.com/rest/api/playfab/client/authentication/gettitlepublickey */ - GetTitlePublicKey(request: PlayFabClientModels.GetTitlePublicKeyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitlePublicKey(request: PlayFabClientModels.GetTitlePublicKeyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the current status of an existing trade. * https://docs.microsoft.com/rest/api/playfab/client/trading/gettradestatus */ - GetTradeStatus(request: PlayFabClientModels.GetTradeStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTradeStatus(request: PlayFabClientModels.GetTradeStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getuserdata */ - GetUserData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the user's current inventory of virtual goods + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the user's current inventory of virtual goods * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/getuserinventory */ - GetUserInventory(request: PlayFabClientModels.GetUserInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserInventory(request: PlayFabClientModels.GetUserInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getuserpublisherdata */ - GetUserPublisherData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getuserpublisherreadonlydata */ - GetUserPublisherReadOnlyData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherReadOnlyData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/getuserreadonlydata */ - GetUserReadOnlyData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Requests a challenge from the server to be signed by Windows Hello Passport service to authenticate. - * https://docs.microsoft.com/rest/api/playfab/client/authentication/getwindowshellochallenge - */ - GetWindowsHelloChallenge(request: PlayFabClientModels.GetWindowsHelloChallengeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserReadOnlyData(request: PlayFabClientModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Grants the specified character type to the user. CharacterIds are not globally unique; characterId must be evaluated * with the parent PlayFabId to guarantee uniqueness. * https://docs.microsoft.com/rest/api/playfab/client/characters/grantcharactertouser */ - GrantCharacterToUser(request: PlayFabClientModels.GrantCharacterToUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GrantCharacterToUser(request: PlayFabClientModels.GrantCharacterToUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Android device identifier to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkandroiddeviceid */ - LinkAndroidDeviceID(request: PlayFabClientModels.LinkAndroidDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkAndroidDeviceID(request: PlayFabClientModels.LinkAndroidDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Apple account associated with the token to the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkapple */ - LinkApple(request: PlayFabClientModels.LinkAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkApple(request: PlayFabClientModels.LinkAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the Battle.net account associated with the token to the user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkbattlenetaccount + */ + LinkBattleNetAccount(request: PlayFabClientModels.LinkBattleNetAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the custom identifier, generated by the title, to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkcustomid */ - LinkCustomID(request: PlayFabClientModels.LinkCustomIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkCustomID(request: PlayFabClientModels.LinkCustomIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Facebook account associated with the provided Facebook access token to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkfacebookaccount */ - LinkFacebookAccount(request: PlayFabClientModels.LinkFacebookAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkFacebookAccount(request: PlayFabClientModels.LinkFacebookAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Facebook Instant Games Id to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkfacebookinstantgamesid */ - LinkFacebookInstantGamesId(request: PlayFabClientModels.LinkFacebookInstantGamesIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkFacebookInstantGamesId(request: PlayFabClientModels.LinkFacebookInstantGamesIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Game Center account associated with the provided Game Center ID to the user's PlayFab account. Logging in with * a Game Center ID is insecure if you do not include the optional PublicKeyUrl, Salt, Signature, and Timestamp parameters @@ -447,80 +493,91 @@ declare module PlayFabClientModule { * page in the PlayFab Game Manager and enabling the 'Require secure authentication only for this app' option. * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkgamecenteraccount */ - LinkGameCenterAccount(request: PlayFabClientModels.LinkGameCenterAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkGameCenterAccount(request: PlayFabClientModels.LinkGameCenterAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the currently signed-in user account to their Google account, using their Google account credentials * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkgoogleaccount */ - LinkGoogleAccount(request: PlayFabClientModels.LinkGoogleAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkGoogleAccount(request: PlayFabClientModels.LinkGoogleAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the currently signed-in user account to their Google Play Games account, using their Google Play Games account + * credentials + * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkgoogleplaygamesservicesaccount + */ + LinkGooglePlayGamesServicesAccount(request: PlayFabClientModels.LinkGooglePlayGamesServicesAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the vendor-specific iOS device identifier to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkiosdeviceid */ - LinkIOSDeviceID(request: PlayFabClientModels.LinkIOSDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkIOSDeviceID(request: PlayFabClientModels.LinkIOSDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Kongregate identifier to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkkongregate */ - LinkKongregate(request: PlayFabClientModels.LinkKongregateAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkKongregate(request: PlayFabClientModels.LinkKongregateAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Nintendo account associated with the token to the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/linknintendoserviceaccount */ - LinkNintendoServiceAccount(request: PlayFabClientModels.LinkNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkNintendoServiceAccount(request: PlayFabClientModels.LinkNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the NintendoSwitchDeviceId to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linknintendoswitchdeviceid */ - LinkNintendoSwitchDeviceId(request: PlayFabClientModels.LinkNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkNintendoSwitchDeviceId(request: PlayFabClientModels.LinkNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links an OpenID Connect account to a user's PlayFab account, based on an existing relationship between a title and an * Open ID Connect provider and the OpenId Connect JWT from that provider. * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkopenidconnect */ - LinkOpenIdConnect(request: PlayFabClientModels.LinkOpenIdConnectRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkOpenIdConnect(request: PlayFabClientModels.LinkOpenIdConnectRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Links the PlayStation Network account associated with the provided access code to the user's PlayFab account + * Links the PlayStation :tm: Network account associated with the provided access code to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkpsnaccount */ - LinkPSNAccount(request: PlayFabClientModels.LinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkPSNAccount(request: PlayFabClientModels.LinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Steam account associated with the provided Steam authentication ticket to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linksteamaccount */ - LinkSteamAccount(request: PlayFabClientModels.LinkSteamAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkSteamAccount(request: PlayFabClientModels.LinkSteamAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Twitch account associated with the token to the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/linktwitch */ - LinkTwitch(request: PlayFabClientModels.LinkTwitchAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Link Windows Hello authentication to the current PlayFab Account - * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkwindowshello - */ - LinkWindowsHello(request: PlayFabClientModels.LinkWindowsHelloAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkTwitch(request: PlayFabClientModels.LinkTwitchAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Xbox Live account associated with the provided access code to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkxboxaccount */ - LinkXboxAccount(request: PlayFabClientModels.LinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkXboxAccount(request: PlayFabClientModels.LinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves title-specific custom property values for a player. + * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/listplayercustomproperties + */ + ListPlayerCustomProperties(request: PlayFabClientModels.ListPlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using the Android device identifier, returning a session identifier that can subsequently be used for * API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithandroiddeviceid */ - LoginWithAndroidDeviceID(request: PlayFabClientModels.LoginWithAndroidDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithAndroidDeviceID(request: PlayFabClientModels.LoginWithAndroidDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs in the user with a Sign in with Apple identity token. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithapple */ - LoginWithApple(request: PlayFabClientModels.LoginWithAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithApple(request: PlayFabClientModels.LoginWithAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Sign in the user with a Battle.net identity token + * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithbattlenet + */ + LoginWithBattleNet(request: PlayFabClientModels.LoginWithBattleNetRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a custom unique identifier generated by the title, returning a session identifier that can * subsequently be used for API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithcustomid */ - LoginWithCustomID(request: PlayFabClientModels.LoginWithCustomIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithCustomID(request: PlayFabClientModels.LoginWithCustomIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user into the PlayFab account, returning a session identifier that can subsequently be used for API calls * which require an authenticated user. Unlike most other login API calls, LoginWithEmailAddress does not permit the @@ -528,19 +585,19 @@ declare module PlayFabClientModule { * RegisterPlayFabUser. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithemailaddress */ - LoginWithEmailAddress(request: PlayFabClientModels.LoginWithEmailAddressRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithEmailAddress(request: PlayFabClientModels.LoginWithEmailAddressRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Facebook access token, returning a session identifier that can subsequently be used for API * calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithfacebook */ - LoginWithFacebook(request: PlayFabClientModels.LoginWithFacebookRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithFacebook(request: PlayFabClientModels.LoginWithFacebookRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Facebook Instant Games ID, returning a session identifier that can subsequently be used for * API calls which require an authenticated user. Requires Facebook Instant Games to be configured. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithfacebookinstantgamesid */ - LoginWithFacebookInstantGamesId(request: PlayFabClientModels.LoginWithFacebookInstantGamesIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithFacebookInstantGamesId(request: PlayFabClientModels.LoginWithFacebookInstantGamesIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using an iOS Game Center player identifier, returning a session identifier that can subsequently be * used for API calls which require an authenticated user. Logging in with a Game Center ID is insecure if you do not @@ -549,40 +606,45 @@ declare module PlayFabClientModule { * enabling the 'Require secure authentication only for this app' option. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithgamecenter */ - LoginWithGameCenter(request: PlayFabClientModels.LoginWithGameCenterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithGameCenter(request: PlayFabClientModels.LoginWithGameCenterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using their Google account credentials * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithgoogleaccount */ - LoginWithGoogleAccount(request: PlayFabClientModels.LoginWithGoogleAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithGoogleAccount(request: PlayFabClientModels.LoginWithGoogleAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Signs the user in using their Google Play Games account credentials + * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithgoogleplaygamesservices + */ + LoginWithGooglePlayGamesServices(request: PlayFabClientModels.LoginWithGooglePlayGamesServicesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using the vendor-specific iOS device identifier, returning a session identifier that can subsequently * be used for API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithiosdeviceid */ - LoginWithIOSDeviceID(request: PlayFabClientModels.LoginWithIOSDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithIOSDeviceID(request: PlayFabClientModels.LoginWithIOSDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Kongregate player account. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithkongregate */ - LoginWithKongregate(request: PlayFabClientModels.LoginWithKongregateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithKongregate(request: PlayFabClientModels.LoginWithKongregateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs in the user with a Nintendo service account token. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithnintendoserviceaccount */ - LoginWithNintendoServiceAccount(request: PlayFabClientModels.LoginWithNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithNintendoServiceAccount(request: PlayFabClientModels.LoginWithNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Nintendo Switch Device ID, returning a session identifier that can subsequently be used for * API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithnintendoswitchdeviceid */ - LoginWithNintendoSwitchDeviceId(request: PlayFabClientModels.LoginWithNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithNintendoSwitchDeviceId(request: PlayFabClientModels.LoginWithNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Logs in a user with an Open ID Connect JWT created by an existing relationship between a title and an Open ID Connect * provider. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithopenidconnect */ - LoginWithOpenIdConnect(request: PlayFabClientModels.LoginWithOpenIdConnectRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithOpenIdConnect(request: PlayFabClientModels.LoginWithOpenIdConnectRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user into the PlayFab account, returning a session identifier that can subsequently be used for API calls * which require an authenticated user. Unlike most other login API calls, LoginWithPlayFab does not permit the creation of @@ -590,107 +652,86 @@ declare module PlayFabClientModule { * RegisterPlayFabUser, or added to existing accounts using AddUsernamePassword. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithplayfab */ - LoginWithPlayFab(request: PlayFabClientModels.LoginWithPlayFabRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithPlayFab(request: PlayFabClientModels.LoginWithPlayFabRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Signs the user in using a PlayStation Network authentication code, returning a session identifier that can subsequently - * be used for API calls which require an authenticated user + * Signs the user in using a PlayStation :tm: Network authentication code, returning a session identifier that can + * subsequently be used for API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithpsn */ - LoginWithPSN(request: PlayFabClientModels.LoginWithPSNRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithPSN(request: PlayFabClientModels.LoginWithPSNRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Steam authentication ticket, returning a session identifier that can subsequently be used for * API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithsteam */ - LoginWithSteam(request: PlayFabClientModels.LoginWithSteamRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithSteam(request: PlayFabClientModels.LoginWithSteamRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Twitch access token. * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithtwitch */ - LoginWithTwitch(request: PlayFabClientModels.LoginWithTwitchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Completes the Windows Hello login flow by returning the signed value of the challange from GetWindowsHelloChallenge. - * Windows Hello has a 2 step client to server authentication scheme. Step one is to request from the server a challenge - * string. Step two is to request the user sign the string via Windows Hello and then send the signed value back to the - * server. - * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithwindowshello - */ - LoginWithWindowsHello(request: PlayFabClientModels.LoginWithWindowsHelloRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithTwitch(request: PlayFabClientModels.LoginWithTwitchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Xbox Live Token, returning a session identifier that can subsequently be used for API calls * which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithxbox */ - LoginWithXbox(request: PlayFabClientModels.LoginWithXboxRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Attempts to locate a game session matching the given parameters. If the goal is to match the player into a specific - * active session, only the LobbyId is required. Otherwise, the BuildVersion, GameMode, and Region are all required - * parameters. Note that parameters specified in the search are required (they are not weighting factors). If a slot is - * found in a server instance matching the parameters, the slot will be assigned to that player, removing it from the - * availabe set. In that case, the information on the game session will be returned, otherwise the Status returned will be - * GameNotFound. - * https://docs.microsoft.com/rest/api/playfab/client/matchmaking/matchmake - */ - Matchmake(request: PlayFabClientModels.MatchmakeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithXbox(request: PlayFabClientModels.LoginWithXboxRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Opens a new outstanding trade. Note that a given item instance may only be in one open trade at a time. * https://docs.microsoft.com/rest/api/playfab/client/trading/opentrade */ - OpenTrade(request: PlayFabClientModels.OpenTradeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + OpenTrade(request: PlayFabClientModels.OpenTradeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Selects a payment option for purchase order created via StartPurchase + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Selects a payment option for purchase order created via StartPurchase * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/payforpurchase */ - PayForPurchase(request: PlayFabClientModels.PayForPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + PayForPurchase(request: PlayFabClientModels.PayForPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Buys a single item with virtual currency. You must specify both the virtual currency to use to purchase, as well as what - * the client believes the price to be. This lets the server fail the purchase if the price has changed. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Buys a single item with virtual currency. You must specify both the virtual currency to use to purchase, as + * well as what the client believes the price to be. This lets the server fail the purchase if the price has changed. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/purchaseitem */ - PurchaseItem(request: PlayFabClientModels.PurchaseItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + PurchaseItem(request: PlayFabClientModels.PurchaseItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds the virtual goods associated with the coupon to the user's inventory. Coupons can be generated via the + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Adds the virtual goods associated with the coupon to the user's inventory. Coupons can be generated via the * Economy->Catalogs tab in the PlayFab Game Manager. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/redeemcoupon */ - RedeemCoupon(request: PlayFabClientModels.RedeemCouponRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RedeemCoupon(request: PlayFabClientModels.RedeemCouponRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Uses the supplied OAuth code to refresh the internally cached player PSN auth token + * Uses the supplied OAuth code to refresh the internally cached player PlayStation :tm: Network auth token * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/refreshpsnauthtoken */ - RefreshPSNAuthToken(request: PlayFabClientModels.RefreshPSNAuthTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RefreshPSNAuthToken(request: PlayFabClientModels.RefreshPSNAuthTokenRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Registers the iOS device to receive push notifications * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/registerforiospushnotification */ - RegisterForIOSPushNotification(request: PlayFabClientModels.RegisterForIOSPushNotificationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RegisterForIOSPushNotification(request: PlayFabClientModels.RegisterForIOSPushNotificationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Registers a new Playfab user account, returning a session identifier that can subsequently be used for API calls which - * require an authenticated user. You must supply either a username or an email address. + * require an authenticated user. You must supply a username and an email address. * https://docs.microsoft.com/rest/api/playfab/client/authentication/registerplayfabuser */ - RegisterPlayFabUser(request: PlayFabClientModels.RegisterPlayFabUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Registers a new PlayFab user account using Windows Hello authentication, returning a session ticket that can - * subsequently be used for API calls which require an authenticated user - * https://docs.microsoft.com/rest/api/playfab/client/authentication/registerwithwindowshello - */ - RegisterWithWindowsHello(request: PlayFabClientModels.RegisterWithWindowsHelloRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RegisterPlayFabUser(request: PlayFabClientModels.RegisterPlayFabUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes a contact email from the player's profile. * https://docs.microsoft.com/rest/api/playfab/client/account-management/removecontactemail */ - RemoveContactEmail(request: PlayFabClientModels.RemoveContactEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveContactEmail(request: PlayFabClientModels.RemoveContactEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes a specified user from the friend list of the local user * https://docs.microsoft.com/rest/api/playfab/client/friend-list-management/removefriend */ - RemoveFriend(request: PlayFabClientModels.RemoveFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveFriend(request: PlayFabClientModels.RemoveFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes the specified generic service identifier from the player's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/removegenericid */ - RemoveGenericID(request: PlayFabClientModels.RemoveGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveGenericID(request: PlayFabClientModels.RemoveGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes users from the set of those able to update the shared data and the set of users in the group. Only users in the * group can remove members. If as a result of the call, zero users remain with access, the group and its associated data @@ -698,191 +739,201 @@ declare module PlayFabClientModule { * guide: https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/removesharedgroupmembers */ - RemoveSharedGroupMembers(request: PlayFabClientModels.RemoveSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveSharedGroupMembers(request: PlayFabClientModels.RemoveSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Report player's ad activity * https://docs.microsoft.com/rest/api/playfab/client/advertising/reportadactivity */ - ReportAdActivity(request: PlayFabClientModels.ReportAdActivityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ReportAdActivity(request: PlayFabClientModels.ReportAdActivityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Write a PlayStream event to describe the provided player device information. This API method is not designed to be * called directly by developers. Each PlayFab client SDK will eventually report this information automatically. * https://docs.microsoft.com/rest/api/playfab/client/analytics/reportdeviceinfo */ - ReportDeviceInfo(request: PlayFabClientModels.DeviceInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ReportDeviceInfo(request: PlayFabClientModels.DeviceInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Submit a report for another player (due to bad bahavior, etc.), so that customer service representatives for the title * can take action concerning potentially toxic players. * https://docs.microsoft.com/rest/api/playfab/client/account-management/reportplayer */ - ReportPlayer(request: PlayFabClientModels.ReportPlayerClientRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ReportPlayer(request: PlayFabClientModels.ReportPlayerClientRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Restores all in-app purchases based on the given restore receipt + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Restores all in-app purchases based on the given restore receipt * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/restoreiospurchases */ - RestoreIOSPurchases(request: PlayFabClientModels.RestoreIOSPurchasesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RestoreIOSPurchases(request: PlayFabClientModels.RestoreIOSPurchasesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Reward player's ad activity * https://docs.microsoft.com/rest/api/playfab/client/advertising/rewardadactivity */ - RewardAdActivity(request: PlayFabClientModels.RewardAdActivityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RewardAdActivity(request: PlayFabClientModels.RewardAdActivityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Forces an email to be sent to the registered email address for the user's account, with a link allowing the user to * change the password.If an account recovery email template ID is provided, an email using the custom email template will * be used. * https://docs.microsoft.com/rest/api/playfab/client/account-management/sendaccountrecoveryemail */ - SendAccountRecoveryEmail(request: PlayFabClientModels.SendAccountRecoveryEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SendAccountRecoveryEmail(request: PlayFabClientModels.SendAccountRecoveryEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the tag list for a specified user in the friend list of the local user * https://docs.microsoft.com/rest/api/playfab/client/friend-list-management/setfriendtags */ - SetFriendTags(request: PlayFabClientModels.SetFriendTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetFriendTags(request: PlayFabClientModels.SetFriendTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the player's secret if it is not already set. Player secrets are used to sign API requests. To reset a player's * secret use the Admin or Server API method SetPlayerSecret. * https://docs.microsoft.com/rest/api/playfab/client/authentication/setplayersecret */ - SetPlayerSecret(request: PlayFabClientModels.SetPlayerSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Start a new game server with a given configuration, add the current player and return the connection information. - * https://docs.microsoft.com/rest/api/playfab/client/matchmaking/startgame - */ - StartGame(request: PlayFabClientModels.StartGameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetPlayerSecret(request: PlayFabClientModels.SetPlayerSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Creates an order for a list of items from the title catalog + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Creates an order for a list of items from the title catalog * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/startpurchase */ - StartPurchase(request: PlayFabClientModels.StartPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + StartPurchase(request: PlayFabClientModels.StartPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Decrements the user's balance of the specified virtual currency by the stated amount. It is possible to make a VC - * balance negative with this API. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Decrements the user's balance of the specified virtual currency by the stated amount. It is possible to make + * a VC balance negative with this API. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/subtractuservirtualcurrency */ - SubtractUserVirtualCurrency(request: PlayFabClientModels.SubtractUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SubtractUserVirtualCurrency(request: PlayFabClientModels.SubtractUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Android device identifier from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkandroiddeviceid */ - UnlinkAndroidDeviceID(request: PlayFabClientModels.UnlinkAndroidDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkAndroidDeviceID(request: PlayFabClientModels.UnlinkAndroidDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Apple account from the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkapple */ - UnlinkApple(request: PlayFabClientModels.UnlinkAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkApple(request: PlayFabClientModels.UnlinkAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Battle.net account from the user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkbattlenetaccount + */ + UnlinkBattleNetAccount(request: PlayFabClientModels.UnlinkBattleNetAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related custom identifier from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkcustomid */ - UnlinkCustomID(request: PlayFabClientModels.UnlinkCustomIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkCustomID(request: PlayFabClientModels.UnlinkCustomIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Facebook account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkfacebookaccount */ - UnlinkFacebookAccount(request: PlayFabClientModels.UnlinkFacebookAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkFacebookAccount(request: PlayFabClientModels.UnlinkFacebookAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Facebook Instant Game Ids from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkfacebookinstantgamesid */ - UnlinkFacebookInstantGamesId(request: PlayFabClientModels.UnlinkFacebookInstantGamesIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkFacebookInstantGamesId(request: PlayFabClientModels.UnlinkFacebookInstantGamesIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Game Center account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkgamecenteraccount */ - UnlinkGameCenterAccount(request: PlayFabClientModels.UnlinkGameCenterAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkGameCenterAccount(request: PlayFabClientModels.UnlinkGameCenterAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Google account from the user's PlayFab account * (https://developers.google.com/android/reference/com/google/android/gms/auth/GoogleAuthUtil#public-methods). * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkgoogleaccount */ - UnlinkGoogleAccount(request: PlayFabClientModels.UnlinkGoogleAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkGoogleAccount(request: PlayFabClientModels.UnlinkGoogleAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Google Play Games account from the user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkgoogleplaygamesservicesaccount + */ + UnlinkGooglePlayGamesServicesAccount(request: PlayFabClientModels.UnlinkGooglePlayGamesServicesAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related iOS device identifier from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkiosdeviceid */ - UnlinkIOSDeviceID(request: PlayFabClientModels.UnlinkIOSDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkIOSDeviceID(request: PlayFabClientModels.UnlinkIOSDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Kongregate identifier from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkkongregate */ - UnlinkKongregate(request: PlayFabClientModels.UnlinkKongregateAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkKongregate(request: PlayFabClientModels.UnlinkKongregateAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Nintendo account from the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinknintendoserviceaccount */ - UnlinkNintendoServiceAccount(request: PlayFabClientModels.UnlinkNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkNintendoServiceAccount(request: PlayFabClientModels.UnlinkNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related NintendoSwitchDeviceId from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinknintendoswitchdeviceid */ - UnlinkNintendoSwitchDeviceId(request: PlayFabClientModels.UnlinkNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkNintendoSwitchDeviceId(request: PlayFabClientModels.UnlinkNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks an OpenID Connect account from a user's PlayFab account, based on the connection ID of an existing relationship * between a title and an Open ID Connect provider. * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkopenidconnect */ - UnlinkOpenIdConnect(request: PlayFabClientModels.UnlinkOpenIdConnectRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkOpenIdConnect(request: PlayFabClientModels.UnlinkOpenIdConnectRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Unlinks the related PSN account from the user's PlayFab account + * Unlinks the related PlayStation :tm: Network account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkpsnaccount */ - UnlinkPSNAccount(request: PlayFabClientModels.UnlinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkPSNAccount(request: PlayFabClientModels.UnlinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Steam account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinksteamaccount */ - UnlinkSteamAccount(request: PlayFabClientModels.UnlinkSteamAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkSteamAccount(request: PlayFabClientModels.UnlinkSteamAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Twitch account from the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinktwitch */ - UnlinkTwitch(request: PlayFabClientModels.UnlinkTwitchAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Unlink Windows Hello authentication from the current PlayFab Account - * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkwindowshello - */ - UnlinkWindowsHello(request: PlayFabClientModels.UnlinkWindowsHelloAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkTwitch(request: PlayFabClientModels.UnlinkTwitchAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Xbox Live account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkxboxaccount */ - UnlinkXboxAccount(request: PlayFabClientModels.UnlinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkXboxAccount(request: PlayFabClientModels.UnlinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Opens the specified container, with the specified key (when required), and returns the contents of the opened container. - * If the container (and key when relevant) are consumable (RemainingUses > 0), their RemainingUses will be decremented, - * consistent with the operation of ConsumeItem. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Opens the specified container, with the specified key (when required), and returns the contents of the + * opened container. If the container (and key when relevant) are consumable (RemainingUses > 0), their RemainingUses will + * be decremented, consistent with the operation of ConsumeItem. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/unlockcontainerinstance */ - UnlockContainerInstance(request: PlayFabClientModels.UnlockContainerInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlockContainerInstance(request: PlayFabClientModels.UnlockContainerInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Searches target inventory for an ItemInstance matching the given CatalogItemId, if necessary unlocks it using an - * appropriate key, and returns the contents of the opened container. If the container (and key when relevant) are + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Searches target inventory for an ItemInstance matching the given CatalogItemId, if necessary unlocks it + * using an appropriate key, and returns the contents of the opened container. If the container (and key when relevant) are * consumable (RemainingUses > 0), their RemainingUses will be decremented, consistent with the operation of ConsumeItem. * https://docs.microsoft.com/rest/api/playfab/client/player-item-management/unlockcontaineritem */ - UnlockContainerItem(request: PlayFabClientModels.UnlockContainerItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlockContainerItem(request: PlayFabClientModels.UnlockContainerItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Update the avatar URL of the player * https://docs.microsoft.com/rest/api/playfab/client/account-management/updateavatarurl */ - UpdateAvatarUrl(request: PlayFabClientModels.UpdateAvatarUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateAvatarUrl(request: PlayFabClientModels.UpdateAvatarUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates and updates the title-specific custom data for the user's character which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/character-data/updatecharacterdata */ - UpdateCharacterData(request: PlayFabClientModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCharacterData(request: PlayFabClientModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the values of the specified title-specific statistics for the specific character. By default, clients are not * permitted to update statistics. Developers may override this setting in the Game Manager > Settings > API Features. * https://docs.microsoft.com/rest/api/playfab/client/characters/updatecharacterstatistics */ - UpdateCharacterStatistics(request: PlayFabClientModels.UpdateCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCharacterStatistics(request: PlayFabClientModels.UpdateCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Updates the title-specific custom property values for a player + * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/updateplayercustomproperties + */ + UpdatePlayerCustomProperties(request: PlayFabClientModels.UpdatePlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the values of the specified title-specific statistics for the user. By default, clients are not permitted to * update statistics. Developers may override this setting in the Game Manager > Settings > API Features. * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/updateplayerstatistics */ - UpdatePlayerStatistics(request: PlayFabClientModels.UpdatePlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdatePlayerStatistics(request: PlayFabClientModels.UpdatePlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds, updates, and removes data keys for a shared group object. If the permission is set to Public, all fields updated * or added in this call will be readable by users not in the group. By default, data permissions are set to Private. @@ -891,60 +942,64 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/client/shared-group-data/updatesharedgroupdata */ - UpdateSharedGroupData(request: PlayFabClientModels.UpdateSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateSharedGroupData(request: PlayFabClientModels.UpdateSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates and updates the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/updateuserdata */ - UpdateUserData(request: PlayFabClientModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserData(request: PlayFabClientModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates and updates the publisher-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/client/player-data-management/updateuserpublisherdata */ - UpdateUserPublisherData(request: PlayFabClientModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserPublisherData(request: PlayFabClientModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title specific display name for the user * https://docs.microsoft.com/rest/api/playfab/client/account-management/updateusertitledisplayname */ - UpdateUserTitleDisplayName(request: PlayFabClientModels.UpdateUserTitleDisplayNameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserTitleDisplayName(request: PlayFabClientModels.UpdateUserTitleDisplayNameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Validates with Amazon that the receipt for an Amazon App Store in-app purchase is valid and that it matches the - * purchased catalog item + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Validates with Amazon that the receipt for an Amazon App Store in-app purchase is valid and that it matches + * the purchased catalog item * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/validateamazoniapreceipt */ - ValidateAmazonIAPReceipt(request: PlayFabClientModels.ValidateAmazonReceiptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ValidateAmazonIAPReceipt(request: PlayFabClientModels.ValidateAmazonReceiptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Validates a Google Play purchase and gives the corresponding item to the player. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Validates a Google Play purchase and gives the corresponding item to the player. * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/validategoogleplaypurchase */ - ValidateGooglePlayPurchase(request: PlayFabClientModels.ValidateGooglePlayPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ValidateGooglePlayPurchase(request: PlayFabClientModels.ValidateGooglePlayPurchaseRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Validates with the Apple store that the receipt for an iOS in-app purchase is valid and that it matches the purchased - * catalog item + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Validates with the Apple store that the receipt for an iOS in-app purchase is valid and that it matches the + * purchased catalog item * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/validateiosreceipt */ - ValidateIOSReceipt(request: PlayFabClientModels.ValidateIOSReceiptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ValidateIOSReceipt(request: PlayFabClientModels.ValidateIOSReceiptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Validates with Windows that the receipt for an Windows App Store in-app purchase is valid and that it matches the - * purchased catalog item + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Validates with Windows that the receipt for an Windows App Store in-app purchase is valid and that it + * matches the purchased catalog item * https://docs.microsoft.com/rest/api/playfab/client/platform-specific-methods/validatewindowsstorereceipt */ - ValidateWindowsStoreReceipt(request: PlayFabClientModels.ValidateWindowsReceiptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ValidateWindowsStoreReceipt(request: PlayFabClientModels.ValidateWindowsReceiptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Writes a character-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/client/analytics/writecharacterevent */ - WriteCharacterEvent(request: PlayFabClientModels.WriteClientCharacterEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WriteCharacterEvent(request: PlayFabClientModels.WriteClientCharacterEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Writes a player-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/client/analytics/writeplayerevent */ - WritePlayerEvent(request: PlayFabClientModels.WriteClientPlayerEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WritePlayerEvent(request: PlayFabClientModels.WriteClientPlayerEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Writes a title-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/client/analytics/writetitleevent */ - WriteTitleEvent(request: PlayFabClientModels.WriteTitleEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WriteTitleEvent(request: PlayFabClientModels.WriteTitleEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } @@ -970,6 +1025,7 @@ declare module PlayFabClientModels { } type AdActivity = "Opened" + | "Closed" | "Start" | "End"; @@ -1135,6 +1191,14 @@ declare module PlayFabClientModels { } + export interface BattleNetAccountPlayFabIdPair { + /** Unique Battle.net account identifier for a user. */ + BattleNetAccountId?: string; + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Battle.net account identifier. */ + PlayFabId?: string; + + } + export interface CancelTradeRequest extends PlayFabModule.IPlayFabRequestCommon { /** Trade identifier. */ TradeId: string; @@ -1310,20 +1374,10 @@ declare module PlayFabClientModels { } type CloudScriptRevisionOption = "Live" + | "Latest" | "Specific"; - export interface CollectionFilter { - /** List of Exclude rules, with any of which if a collection matches, it is excluded by the filter. */ - Excludes?: Container_Dictionary_String_String[]; - /** - * List of Include rules, with any of which if a collection matches, it is included by the filter, unless it is excluded by - * one of the Exclude rule - */ - Includes?: Container_Dictionary_String_String[]; - - } - export interface ConfirmPurchaseRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -1399,7 +1453,7 @@ declare module PlayFabClientModels { CatalogVersion?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Id of the PSN service label to consume entitlements from */ + /** Id of the PlayStation :tm: Network service label to consume entitlements from */ ServiceLabel: number; } @@ -1436,21 +1490,18 @@ declare module PlayFabClientModels { } - export interface Container_Dictionary_String_String { - /** Content of data */ - Data?: { [key: string]: string | null }; - - } - type ContinentCode = "AF" + | "AN" | "AS" | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" + | "AX" | "AL" | "DZ" @@ -1698,7 +1749,8 @@ declare module PlayFabClientModels { | "EH" | "YE" | "ZM" - | "ZW"; + | "ZW" + | "Unknown"; export interface CreateSharedGroupRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique identifier for the shared group (a random identifier will be assigned, if one is not specified). */ @@ -1713,6 +1765,7 @@ declare module PlayFabClientModels { } type Currency = "AED" + | "AFN" | "ALL" | "AMD" @@ -1875,27 +1928,43 @@ declare module PlayFabClientModels { | "ZMW" | "ZWD"; - export interface CurrentGamesRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Build to match against. */ - BuildVersion?: string; - /** Game mode to look for. */ - GameMode?: string; - /** Region to check for Game Server Instances. */ - Region?: string; - /** Statistic name to find statistic-based matches. */ - StatisticName?: string; - /** Filter to include and/or exclude Game Server Instances associated with certain tags. */ - TagFilter?: CollectionFilter; + export interface CustomPropertyDetails { + /** The custom property's name. */ + Name?: string; + /** The custom property's value. */ + Value?: any; + + } + + export interface DeletedPropertyDetails { + /** The name of the property which was requested to be deleted. */ + Name?: string; + /** Indicates whether or not the property was deleted. If false, no property with that name existed. */ + WasDeleted: boolean; + + } + + export interface DeletePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Optional field used for concurrency control. One can ensure that the delete operation will only be performed if the + * player's properties have not been updated by any other clients since the last version. + */ + ExpectedPropertiesVersion?: number; + /** A list of property names denoting which properties should be deleted. */ + PropertyNames: string[]; } - export interface CurrentGamesResult extends PlayFabModule.IPlayFabResultCommon { - /** number of games running */ - GameCount: number; - /** array of games found */ - Games?: GameInfo[]; - /** total number of players across all servers */ - PlayerCount: number; + export interface DeletePlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** The list of properties requested to be deleted. */ + DeletedProperties?: DeletedPropertyDetails[]; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; } @@ -1906,6 +1975,7 @@ declare module PlayFabClientModels { } type EmailVerificationStatus = "Unverified" + | "Pending" | "Confirmed"; @@ -1996,6 +2066,14 @@ declare module PlayFabClientModels { } + type ExternalFriendSources = "None" + + | "Steam" + | "Facebook" + | "Xbox" + | "Psn" + | "All"; + export interface FacebookInstantGamesPlayFabIdPair { /** Unique Facebook Instant Games identifier for a user. */ FacebookInstantGamesId?: string; @@ -2013,17 +2091,23 @@ declare module PlayFabClientModels { } export interface FriendInfo { - /** Available Facebook information (if the user and PlayFab friend are also connected in Facebook). */ + /** Available Facebook information (if the user and connected Facebook friend both have PlayFab Accounts in the same title). */ FacebookInfo?: UserFacebookInfo; /** PlayFab unique identifier for this friend. */ FriendPlayFabId?: string; - /** Available Game Center information (if the user and PlayFab friend are also connected in Game Center). */ + /** + * Available Game Center information (if the user and connected Game Center friend both have PlayFab Accounts in the same + * title). + */ GameCenterInfo?: UserGameCenterInfo; /** The profile of the user, if requested. */ Profile?: PlayerProfileModel; - /** Available PSN information, if the user and PlayFab friend are both connected to PSN. */ + /** + * Available PlayStation :tm: Network information, if the user connected PlayStation :tm Network friend both have PlayFab + * Accounts in the same title. + */ PSNInfo?: UserPsnInfo; - /** Available Steam information (if the user and PlayFab friend are also connected in Steam). */ + /** Available Steam information (if the user and connected Steam friend both have PlayFab Accounts in the same title). */ SteamInfo?: UserSteamInfo; /** Tags which have been associated with this friend. */ Tags?: string[]; @@ -2031,7 +2115,7 @@ declare module PlayFabClientModels { TitleDisplayName?: string; /** PlayFab unique username for this friend. */ Username?: string; - /** Available Xbox information, if the user and PlayFab friend are both connected to Xbox Live. */ + /** Available Xbox information, (if the user and connected Xbox Live friend both have PlayFab Accounts in the same title). */ XboxInfo?: UserXboxInfo; } @@ -2044,62 +2128,6 @@ declare module PlayFabClientModels { } - export interface GameInfo { - /** build version this server is running */ - BuildVersion?: string; - /** game mode this server is running */ - GameMode?: string; - /** game session custom data */ - GameServerData?: string; - /** game specific string denoting server configuration */ - GameServerStateEnum?: string; - /** last heartbeat of the game server instance, used in external game server provider mode */ - LastHeartbeat?: string; - /** unique lobby identifier for this game server */ - LobbyID?: string; - /** maximum players this server can support */ - MaxPlayers?: number; - /** array of current player IDs on this server */ - PlayerUserIds?: string[]; - /** region to which this server is associated */ - Region?: string; - /** duration in seconds this server has been running */ - RunTime: number; - /** IPV4 address of the server */ - ServerIPV4Address?: string; - /** IPV6 address of the server */ - ServerIPV6Address?: string; - /** port number to use for non-http communications with the server */ - ServerPort?: number; - /** Public DNS name (if any) of the server */ - ServerPublicDNSName?: string; - /** stastic used to match this game in player statistic matchmaking */ - StatisticName?: string; - /** game session tags */ - Tags?: { [key: string]: string | null }; - - } - - type GameInstanceState = "Open" - | "Closed"; - - export interface GameServerRegionsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** version of game server for which stats are being requested */ - BuildVersion: string; - /** - * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a - * title has been selected. - */ - TitleId?: string; - - } - - export interface GameServerRegionsResult extends PlayFabModule.IPlayFabResultCommon { - /** array of regions found matching the request parameters */ - Regions?: RegionInfo[]; - - } - export interface GenericPlayFabIdPair { /** Unique generic service identifier for a user. */ GenericId?: GenericServiceId; @@ -2217,8 +2245,6 @@ declare module PlayFabClientModels { } export interface GetCharacterLeaderboardRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Optional character type on which to filter the leaderboard entries. */ - CharacterType?: string; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** First entry in the leaderboard to be retrieved. */ @@ -2268,10 +2294,11 @@ declare module PlayFabClientModels { export interface GetFriendLeaderboardAroundPlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Indicates whether Facebook friends should be included in the response. Default is true. */ - IncludeFacebookFriends?: boolean; - /** Indicates whether Steam service friends should be included in the response. Default is true. */ - IncludeSteamFriends?: boolean; + /** + * Indicates which other platforms' friends should be included in the response. In HTTP, it is represented as a + * comma-separated list of platforms. + */ + ExternalPlatformFriends?: string; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** PlayFab unique identifier of the user to center the leaderboard around. If null will center on the logged in user. */ @@ -2304,10 +2331,11 @@ declare module PlayFabClientModels { export interface GetFriendLeaderboardRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Indicates whether Facebook friends should be included in the response. Default is true. */ - IncludeFacebookFriends?: boolean; - /** Indicates whether Steam service friends should be included in the response. Default is true. */ - IncludeSteamFriends?: boolean; + /** + * Indicates which other platforms' friends should be included in the response. In HTTP, it is represented as a + * comma-separated list of platforms. + */ + ExternalPlatformFriends?: string; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** @@ -2330,17 +2358,21 @@ declare module PlayFabClientModels { export interface GetFriendsListRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Indicates whether Facebook friends should be included in the response. Default is true. */ - IncludeFacebookFriends?: boolean; - /** Indicates whether Steam service friends should be included in the response. Default is true. */ - IncludeSteamFriends?: boolean; + /** + * Indicates which other platforms' friends should be included in the response. In HTTP, it is represented as a + * comma-separated list of platforms. + */ + ExternalPlatformFriends?: string; /** * If non-null, this determines which properties of the resulting player profiles to return. For API calls from the client, * only the allowed client profile properties for the title may be requested. These allowed properties are configured in * the Game Manager "Client Profile Options" tab in the "Settings" section. */ ProfileConstraints?: PlayerProfileViewConstraints; - /** Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. */ + /** + * Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. When provided, all Xbox Live + * users the caller is following are included regardless of whether they follow the caller back. + */ XboxToken?: string; } @@ -2354,8 +2386,6 @@ declare module PlayFabClientModels { export interface GetLeaderboardAroundCharacterRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID for a specific character on which to center the leaderboard. */ CharacterId: string; - /** Optional character type on which to filter the leaderboard entries. */ - CharacterType?: string; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** Unique identifier for the title-specific statistic for the leaderboard. */ @@ -2400,8 +2430,6 @@ declare module PlayFabClientModels { } export interface GetLeaderboardForUsersCharactersRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Maximum number of entries to retrieve. */ - MaxResultsCount: number; /** Unique identifier for the title-specific statistic for the leaderboard. */ StatisticName: string; @@ -2557,6 +2585,23 @@ declare module PlayFabClientModels { } + export interface GetPlayerCustomPropertyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Specific property name to search for in the player's properties. */ + PropertyName: string; + + } + + export interface GetPlayerCustomPropertyResult extends PlayFabModule.IPlayFabResultCommon { + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + /** Player specific property and its corresponding value. */ + Property?: CustomPropertyDetails; + + } + export interface GetPlayerProfileRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -2655,8 +2700,26 @@ declare module PlayFabClientModels { } + export interface GetPlayFabIDsFromBattleNetAccountIdsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Battle.net account identifiers for which the title needs to get PlayFab identifiers. The array cannot + * exceed 10 in length. + */ + BattleNetAccountIds: string[]; + + } + + export interface GetPlayFabIDsFromBattleNetAccountIdsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Battle.net account identifiers to PlayFab identifiers. */ + Data?: BattleNetAccountPlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromFacebookIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Facebook identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Facebook identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed 25 in + * length. + */ FacebookIDs: string[]; } @@ -2668,7 +2731,10 @@ declare module PlayFabClientModels { } export interface GetPlayFabIDsFromFacebookInstantGamesIdsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Facebook Instant Games identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Facebook Instant Games identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ FacebookInstantGamesIds: string[]; } @@ -2680,7 +2746,10 @@ declare module PlayFabClientModels { } export interface GetPlayFabIDsFromGameCenterIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Game Center identifiers (the Player Identifier) for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Game Center identifiers (the Player Identifier) for which the title needs to get PlayFab identifiers. + * The array cannot exceed 25 in length. + */ GameCenterIDs: string[]; } @@ -2707,7 +2776,10 @@ declare module PlayFabClientModels { } export interface GetPlayFabIDsFromGoogleIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Google identifiers (Google+ user IDs) for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Google identifiers (Google+ user IDs) for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ GoogleIDs: string[]; } @@ -2718,8 +2790,26 @@ declare module PlayFabClientModels { } + export interface GetPlayFabIDsFromGooglePlayGamesPlayerIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Google Play Games identifiers (Google+ user IDs) for which the title needs to get PlayFab identifiers. + * The array cannot exceed 25 in length. + */ + GooglePlayGamesPlayerIDs: string[]; + + } + + export interface GetPlayFabIDsFromGooglePlayGamesPlayerIDsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Google Play Games identifiers to PlayFab identifiers. */ + Data?: GooglePlayGamesPlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromKongregateIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Kongregate identifiers (Kongregate's user_id) for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Kongregate identifiers (Kongregate's user_id) for which the title needs to get PlayFab identifiers. The + * array cannot exceed 25 in length. + */ KongregateIDs: string[]; } @@ -2730,8 +2820,26 @@ declare module PlayFabClientModels { } + export interface GetPlayFabIDsFromNintendoServiceAccountIdsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Nintendo Switch Account identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ + NintendoAccountIds: string[]; + + } + + export interface GetPlayFabIDsFromNintendoServiceAccountIdsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Nintendo Switch Service Account identifiers to PlayFab identifiers. */ + Data?: NintendoServiceAccountPlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Nintendo Switch Device identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Nintendo Switch Device identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ NintendoSwitchDeviceIds: string[]; } @@ -2742,22 +2850,60 @@ declare module PlayFabClientModels { } + export interface GetPlayFabIDsFromOpenIdsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique OpenId Connect identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed + * 10 in length. + */ + OpenIdSubjectIdentifiers: OpenIdSubjectIdentifier[]; + + } + + export interface GetPlayFabIDsFromOpenIdsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of OpenId Connect identifiers to PlayFab identifiers. */ + Data?: OpenIdSubjectIdentifierPlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromPSNAccountIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Id of the PSN issuer environment. If null, defaults to production environment. */ + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ IssuerId?: number; - /** Array of unique PlayStation Network identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique PlayStation :tm: Network identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ PSNAccountIDs: string[]; } export interface GetPlayFabIDsFromPSNAccountIDsResult extends PlayFabModule.IPlayFabResultCommon { - /** Mapping of PlayStation Network identifiers to PlayFab identifiers. */ + /** Mapping of PlayStation :tm: Network identifiers to PlayFab identifiers. */ Data?: PSNAccountPlayFabIdPair[]; } + export interface GetPlayFabIDsFromPSNOnlineIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ + IssuerId?: number; + /** + * Array of unique PlayStation :tm: Network identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ + PSNOnlineIDs: string[]; + + } + + export interface GetPlayFabIDsFromPSNOnlineIDsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of PlayStation :tm: Network identifiers to PlayFab identifiers. */ + Data?: PSNOnlinePlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromSteamIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Steam identifiers (Steam profile IDs) for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Steam identifiers (Steam profile IDs) for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ SteamStringIDs?: string[]; } @@ -2768,8 +2914,26 @@ declare module PlayFabClientModels { } + export interface GetPlayFabIDsFromSteamNamesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Steam identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed 25 in + * length. + */ + SteamNames: string[]; + + } + + export interface GetPlayFabIDsFromSteamNamesResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Steam identifiers to PlayFab identifiers. */ + Data?: SteamNamePlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromTwitchIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Twitch identifiers (Twitch's _id) for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Twitch identifiers (Twitch's _id) for which the title needs to get PlayFab identifiers. The array cannot + * exceed 25 in length. + */ TwitchIds: string[]; } @@ -2783,13 +2947,16 @@ declare module PlayFabClientModels { export interface GetPlayFabIDsFromXboxLiveIDsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The ID of Xbox Live sandbox. */ Sandbox?: string; - /** Array of unique Xbox Live account identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Xbox Live account identifiers for which the title needs to get PlayFab identifiers. The array cannot + * exceed 25 in length. + */ XboxLiveAccountIDs: string[]; } export interface GetPlayFabIDsFromXboxLiveIDsResult extends PlayFabModule.IPlayFabResultCommon { - /** Mapping of PlayStation Network identifiers to PlayFab identifiers. */ + /** Mapping of Xbox Live identifiers to PlayFab identifiers. */ Data?: XboxLiveAccountPlayFabIdPair[]; } @@ -2992,23 +3159,6 @@ declare module PlayFabClientModels { } - export interface GetWindowsHelloChallengeRequest extends PlayFabModule.IPlayFabRequestCommon { - /** SHA256 hash of the PublicKey generated by Windows Hello. */ - PublicKeyHint: string; - /** - * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a - * title has been selected. - */ - TitleId: string; - - } - - export interface GetWindowsHelloChallengeResponse extends PlayFabModule.IPlayFabResultCommon { - /** Server generated challenge to be signed by the user. */ - Challenge?: string; - - } - export interface GooglePlayFabIdPair { /** Unique Google identifier for a user. */ GoogleId?: string; @@ -3017,6 +3167,14 @@ declare module PlayFabClientModels { } + export interface GooglePlayGamesPlayFabIdPair { + /** Unique Google Play Games identifier for a user. */ + GooglePlayGamesPlayerId?: string; + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Google Play Games identifier. */ + PlayFabId?: string; + + } + export interface GrantCharacterToUserRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version from which items are to be granted. */ CatalogVersion?: string; @@ -3133,6 +3291,16 @@ declare module PlayFabClientModels { } + export interface LinkBattleNetAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to a specific Battle.net account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** The JSON Web Token (JWT) returned by Battle.net after login */ + IdentityToken: string; + + } + export interface LinkCustomIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** Custom unique identifier for the user, generated by the title. */ CustomId: string; @@ -3161,7 +3329,9 @@ declare module PlayFabClientModels { export interface LinkFacebookAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique identifier from Facebook for the user. */ - AccessToken: string; + AccessToken?: string; + /** Token used for limited login authentication. */ + AuthenticationToken?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** If another user is already linked to the account, unlink the other user and re-link. */ @@ -3190,7 +3360,10 @@ declare module PlayFabClientModels { export interface LinkGameCenterAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** If another user is already linked to the account, unlink the other user and re-link. */ + /** + * If another user is already linked to the account, unlink the other user and re-link. If the current user is already + * linked, link both accounts + */ ForceLink?: boolean; /** Game Center identifier for the player account to be linked. */ GameCenterId: string; @@ -3215,7 +3388,10 @@ declare module PlayFabClientModels { export interface LinkGoogleAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** If another user is already linked to the account, unlink the other user and re-link. */ + /** + * If another user is already linked to the account, unlink the other user and re-link. If the current user is already + * linked, link both accounts + */ ForceLink?: boolean; /** * Server authentication code obtained on the client by calling getServerAuthCode() @@ -3229,6 +3405,26 @@ declare module PlayFabClientModels { } + export interface LinkGooglePlayGamesServicesAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * If another user is already linked to the account, unlink the other user and re-link. If the current user is already + * linked, link both accounts + */ + ForceLink?: boolean; + /** + * OAuth 2.0 server authentication code obtained on the client by calling the requestServerSideAccess() + * (https://developers.google.com/games/services/android/signin) Google Play Games client API. + */ + ServerAuthCode: string; + + } + + export interface LinkGooglePlayGamesServicesAccountResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface LinkIOSDeviceIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -3306,15 +3502,15 @@ declare module PlayFabClientModels { } export interface LinkPSNAccountRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Authentication code provided by the PlayStation Network. */ + /** Authentication code provided by the PlayStation :tm: Network. */ AuthCode: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; - /** Id of the PSN issuer environment. If null, defaults to production environment. */ + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ IssuerId?: number; - /** Redirect URI supplied to PSN when requesting an auth code */ + /** Redirect URI supplied to PlayStation :tm: Network when requesting an auth code */ RedirectUri: string; } @@ -3333,6 +3529,11 @@ declare module PlayFabClientModels { * 0x08 should become "08"). */ SteamTicket: string; + /** + * True if ticket was generated using ISteamUser::GetAuthTicketForWebAPI() using "AzurePlayFab" as the identity string. + * False if the ticket was generated with ISteamUser::GetAuthSessionTicket(). + */ + TicketIsServiceSpecific?: boolean; } @@ -3354,35 +3555,32 @@ declare module PlayFabClientModels { } - export interface LinkWindowsHelloAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + export interface LinkXboxAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Device name. */ - DeviceName?: string; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; - /** PublicKey generated by Windows Hello. */ - PublicKey: string; - /** Player's user named used by Windows Hello. */ - UserName: string; + /** Token provided by the Xbox Live SDK/XDK method GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). */ + XboxToken: string; } - export interface LinkWindowsHelloAccountResponse extends PlayFabModule.IPlayFabResultCommon { + export interface LinkXboxAccountResult extends PlayFabModule.IPlayFabResultCommon { } - export interface LinkXboxAccountRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** If another user is already linked to the account, unlink the other user and re-link. */ - ForceLink?: boolean; - /** Token provided by the Xbox Live SDK/XDK method GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). */ - XboxToken: string; + export interface ListPlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { } - export interface LinkXboxAccountResult extends PlayFabModule.IPlayFabResultCommon { + export interface ListPlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** Player specific properties and their corresponding values for this title. */ + Properties?: CustomPropertyDetails[]; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; } @@ -3413,6 +3611,7 @@ declare module PlayFabClientModels { } type LoginIdentityProvider = "Unknown" + | "PlayFab" | "Custom" | "GameCenter" @@ -3432,7 +3631,11 @@ declare module PlayFabClientModels { | "FacebookInstantGames" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface LoginResult extends PlayFabModule.IPlayFabResultCommon { /** @@ -3444,7 +3647,7 @@ declare module PlayFabClientModels { InfoResultPayload?: GetPlayerCombinedInfoResultPayload; /** The time of this user's previous login. If there was no previous login, then it's DateTime.MinValue */ LastLoginTime?: string; - /** True if the account was newly created on this login. */ + /** True if the master_player_account was newly created on this login. */ NewlyCreated: boolean; /** Player's unique PlayFabId. */ PlayFabId?: string; @@ -3466,13 +3669,13 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Specific Operating System version for the user's device. */ OS?: string; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3487,16 +3690,38 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** * The JSON Web token (JWT) returned by Apple after login. Represented as the identityToken field in the authorization - * credential payload. + * credential payload. If you choose to ignore the expiration date for identity tokens, you will receive an NotAuthorized + * error if Apple rotates the signing key. In this case, users have to login to provide a fresh identity token. + */ + IdentityToken: string; + /** Flags for which pieces of info to return for the user. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + /** Player secret that is used to verify API request signatures. */ + PlayerSecret?: string; + /** + * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a + * title has been selected. */ + TitleId?: string; + + } + + export interface LoginWithBattleNetRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Automatically create a PlayFab account if one is not currently linked to this ID. */ + CreateAccount?: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ + EncryptedRequest?: string; + /** The JSON Web Token (JWT) returned by Battle.net after login */ IdentityToken: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3513,11 +3738,11 @@ declare module PlayFabClientModels { CustomId?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3549,13 +3774,13 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Facebook Instant Games signature for the user. */ FacebookInstantGamesSignature: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3567,16 +3792,18 @@ declare module PlayFabClientModels { export interface LoginWithFacebookRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique identifier from Facebook for the user. */ - AccessToken: string; + AccessToken?: string; + /** Token used for limited login authentication. */ + AuthenticationToken?: string; /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3591,13 +3818,13 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Unique Game Center player id. */ PlayerId?: string; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** The URL for the public encryption key that will be used to verify the signature. */ PublicKeyUrl?: string; @@ -3623,17 +3850,43 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * OAuth 2.0 server authentication code obtained on the client by calling the getServerAuthCode() * (https://developers.google.com/identity/sign-in/android/offline-access) Google client API. */ ServerAuthCode?: string; + /** Optional boolean to opt out of setting the MPA email when creating a Google account, defaults to true. */ + SetEmail?: boolean; + /** + * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a + * title has been selected. + */ + TitleId?: string; + + } + + export interface LoginWithGooglePlayGamesServicesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Automatically create a PlayFab account if one is not currently linked to this ID. */ + CreateAccount?: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ + EncryptedRequest?: string; + /** Flags for which pieces of info to return for the user. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + /** Player secret that is used to verify API request signatures. */ + PlayerSecret?: string; + /** + * OAuth 2.0 server authentication code obtained on the client by calling the requestServerSideAccess() + * (https://developers.google.com/games/services/android/signin) Google Play Games client API. + */ + ServerAuthCode?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. @@ -3651,13 +3904,13 @@ declare module PlayFabClientModels { DeviceId?: string; /** Specific model of the user's device. */ DeviceModel?: string; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Specific Operating System version for the user's device. */ OS?: string; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3674,13 +3927,13 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Numeric user ID assigned by Kongregate */ KongregateId?: string; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3695,13 +3948,13 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** The JSON Web token (JWT) returned by Nintendo after login. */ IdentityToken: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3716,13 +3969,13 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Nintendo Switch unique identifier for the user's device. */ NintendoSwitchDeviceId?: string; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3739,7 +3992,7 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** * The JSON Web token (JWT) returned by the identity provider after login. Represented as the id_token field in the @@ -3748,7 +4001,7 @@ declare module PlayFabClientModels { IdToken: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3776,21 +4029,21 @@ declare module PlayFabClientModels { } export interface LoginWithPSNRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Auth code provided by the PSN OAuth provider. */ + /** Auth code provided by the PlayStation :tm: Network OAuth provider. */ AuthCode?: string; /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Id of the PSN issuer environment. If null, defaults to production environment. */ + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ IssuerId?: number; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; - /** Redirect URI supplied to PSN when requesting an auth code */ + /** Redirect URI supplied to PlayStation :tm: Network when requesting an auth code */ RedirectUri?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3805,17 +4058,22 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Authentication token for the user, returned as a byte array from Steam, and converted to a string (for example, the byte * 0x08 should become "08"). */ SteamTicket?: string; + /** + * True if ticket was generated using ISteamUser::GetAuthTicketForWebAPI() using "AzurePlayFab" as the identity string. + * False if the ticket was generated with ISteamUser::GetAuthSessionTicket(). + */ + TicketIsServiceSpecific?: boolean; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a * title has been selected. @@ -3831,11 +4089,11 @@ declare module PlayFabClientModels { CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3845,33 +4103,16 @@ declare module PlayFabClientModels { } - export interface LoginWithWindowsHelloRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The signed response from the user for the Challenge. */ - ChallengeSignature: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Flags for which pieces of info to return for the user. */ - InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** SHA256 hash of the PublicKey generated by Windows Hello. */ - PublicKeyHint: string; - /** - * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a - * title has been selected. - */ - TitleId?: string; - - } - export interface LoginWithXboxRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3892,56 +4133,6 @@ declare module PlayFabClientModels { } - export interface MatchmakeRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Build version to match against. [Note: Required if LobbyId is not specified] */ - BuildVersion?: string; - /** Character to use for stats based matching. Leave null to use account stats. */ - CharacterId?: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Game mode to match make against. [Note: Required if LobbyId is not specified] */ - GameMode?: string; - /** Lobby identifier to match make against. This is used to select a specific Game Server Instance. */ - LobbyId?: string; - /** Region to match make against. [Note: Required if LobbyId is not specified] */ - Region?: string; - /** Start a game session if one with an open slot is not found. Defaults to true. */ - StartNewIfNoneFound?: boolean; - /** Player statistic to use in finding a match. May be null for no stat-based matching. */ - StatisticName?: string; - /** Filter to include and/or exclude Game Server Instances associated with certain Tags */ - TagFilter?: CollectionFilter; - - } - - export interface MatchmakeResult extends PlayFabModule.IPlayFabResultCommon { - /** timestamp for when the server will expire, if applicable */ - Expires?: string; - /** unique lobby identifier of the server matched */ - LobbyID?: string; - /** time in milliseconds the application is configured to wait on matchmaking results */ - PollWaitTimeMS?: number; - /** IPV4 address of the server */ - ServerIPV4Address?: string; - /** IPV6 address of the server */ - ServerIPV6Address?: string; - /** port number to use for non-http communications with the server */ - ServerPort?: number; - /** Public DNS name (if any) of the server */ - ServerPublicDNSName?: string; - /** result of match making process */ - Status?: string; - /** server authorization ticket (used by RedeemMatchmakerTicket to validate user insertion into the game) */ - Ticket?: string; - - } - - type MatchmakeStatus = "Complete" - | "Waiting" - | "GameNotFound" - | "NoAvailableSlots" - | "SessionClosed"; - export interface MembershipModel { /** Whether this membership is active. That is, whether the MembershipExpiration time has been reached. */ IsActive: boolean; @@ -3995,6 +4186,17 @@ declare module PlayFabClientModels { } + export interface NintendoServiceAccountPlayFabIdPair { + /** Unique Nintendo Switch Service Account identifier for a user. */ + NintendoServiceAccountId?: string; + /** + * Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Nintendo Switch Service Account + * identifier. + */ + PlayFabId?: string; + + } + export interface NintendoSwitchPlayFabIdPair { /** Unique Nintendo Switch Device identifier for a user. */ NintendoSwitchDeviceId?: string; @@ -4003,6 +4205,22 @@ declare module PlayFabClientModels { } + export interface OpenIdSubjectIdentifier { + /** The issuer URL for the OpenId Connect provider, or the override URL if an override exists. */ + Issuer: string; + /** The unique subject identifier within the context of the issuer. */ + Subject: string; + + } + + export interface OpenIdSubjectIdentifierPlayFabIdPair { + /** Unique OpenId Connect identifier for a user. */ + OpenIdSubjectIdentifier?: OpenIdSubjectIdentifier; + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the OpenId Connect identifier. */ + PlayFabId?: string; + + } + export interface OpenTradeRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Players who are allowed to accept the trade. If null, the trade may be accepted by any player. If empty, the trade may @@ -4099,7 +4317,11 @@ declare module PlayFabClientModels { Created?: string; /** Player display name */ DisplayName?: string; - /** List of experiment variants for the player. */ + /** + * List of experiment variants for the player. Note that these variants are not guaranteed to be up-to-date when returned + * during login because the player profile is updated only after login. Instead, use the LoginResult.TreatmentAssignment + * property during login to get the correct variants and variables. + */ ExperimentVariants?: string[]; /** UTC time when the player most recently logged in to the title */ LastLogin?: string; @@ -4188,21 +4410,35 @@ declare module PlayFabClientModels { } export interface PlayStation5Payload { - /** An optional list of entitlement ids to query against PSN */ + /** An optional list of entitlement ids to query against PlayStation :tm: Network */ Ids?: string[]; - /** Id of the PSN service label to consume entitlements from */ + /** Id of the PlayStation :tm: Network service label to consume entitlements from */ ServiceLabel?: string; } export interface PSNAccountPlayFabIdPair { - /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the PlayStation Network identifier. */ + /** + * Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the PlayStation :tm: Network + * identifier. + */ PlayFabId?: string; - /** Unique PlayStation Network identifier for a user. */ + /** Unique PlayStation :tm: Network identifier for a user. */ PSNAccountId?: string; } + export interface PSNOnlinePlayFabIdPair { + /** + * Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the PlayStation :tm: Network + * identifier. + */ + PlayFabId?: string; + /** Unique PlayStation :tm: Network identifier for a user. */ + PSNOnlineId?: string; + + } + export interface PurchaseItemRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version for the items to be purchased (defaults to most recent version. */ CatalogVersion?: string; @@ -4245,6 +4481,7 @@ declare module PlayFabClientModels { } type PushNotificationPlatform = "ApplePushNotificationService" + | "GoogleCloudMessaging"; export interface PushNotificationRegistrationModel { @@ -4274,35 +4511,15 @@ declare module PlayFabClientModels { } export interface RefreshPSNAuthTokenRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Auth code returned by PSN OAuth system. */ + /** Auth code returned by PlayStation :tm: Network OAuth system. */ AuthCode: string; - /** Id of the PSN issuer environment. If null, defaults to production environment. */ + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ IssuerId?: number; - /** Redirect URI supplied to PSN when requesting an auth code */ + /** Redirect URI supplied to PlayStation :tm: Network when requesting an auth code */ RedirectUri: string; } - type Region = "USCentral" - | "USEast" - | "EUWest" - | "Singapore" - | "Japan" - | "Brazil" - | "Australia"; - - export interface RegionInfo { - /** indicates whether the server specified is available in this region */ - Available: boolean; - /** name of the region */ - Name?: string; - /** url to ping to get roundtrip time */ - PingUrl?: string; - /** unique identifier for the region */ - Region?: string; - - } - export interface RegisterForIOSPushNotificationRequest extends PlayFabModule.IPlayFabRequestCommon { /** Message to display when confirming push notification. */ ConfirmationMessage?: string; @@ -4324,13 +4541,13 @@ declare module PlayFabClientModels { DisplayName?: string; /** User email address attached to their account */ Email?: string; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** Password for the PlayFab account (6-100 characters) */ Password?: string; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** * An optional parameter that specifies whether both the username and email parameters are required. If true, both @@ -4365,29 +4582,6 @@ declare module PlayFabClientModels { } - export interface RegisterWithWindowsHelloRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Device name. */ - DeviceName?: string; - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ - EncryptedRequest?: string; - /** Flags for which pieces of info to return for the user. */ - InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ - PlayerSecret?: string; - /** PublicKey generated by Windows Hello. */ - PublicKey?: string; - /** - * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a - * title has been selected. - */ - TitleId: string; - /** Player's user name used by Windows Hello. */ - UserName?: string; - - } - export interface RemoveContactEmailRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -4551,9 +4745,9 @@ declare module PlayFabClientModels { } export interface SetPlayerSecretRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Base64 encoded body that is encrypted with the Title's public RSA key (Enterprise Only). */ + /** Base64 encoded body that is encrypted with the Title's public RSA key. */ EncryptedRequest?: string; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; } @@ -4575,6 +4769,7 @@ declare module PlayFabClientModels { } type SourceType = "Admin" + | "BackEnd" | "GameClient" | "GameServer" @@ -4582,44 +4777,6 @@ declare module PlayFabClientModels { | "Custom" | "API"; - export interface StartGameRequest extends PlayFabModule.IPlayFabRequestCommon { - /** version information for the build of the game server which is to be started */ - BuildVersion: string; - /** character to use for stats based matching. Leave null to use account stats */ - CharacterId?: string; - /** custom command line argument when starting game server process */ - CustomCommandLineData?: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** the title-defined game mode this server is to be running (defaults to 0 if there is only one mode) */ - GameMode: string; - /** the region to associate this server with for match filtering */ - Region: string; - /** player statistic for others to use in finding this game. May be null for no stat-based matching */ - StatisticName?: string; - - } - - export interface StartGameResult extends PlayFabModule.IPlayFabResultCommon { - /** timestamp for when the server should expire, if applicable */ - Expires?: string; - /** unique identifier for the lobby of the server started */ - LobbyID?: string; - /** password required to log into the server */ - Password?: string; - /** server IPV4 address */ - ServerIPV4Address?: string; - /** server IPV6 address */ - ServerIPV6Address?: string; - /** port on the server to be used for communication */ - ServerPort?: number; - /** server public DNS name */ - ServerPublicDNSName?: string; - /** unique identifier for the server */ - Ticket?: string; - - } - export interface StartPurchaseRequest extends PlayFabModule.IPlayFabRequestCommon { /** Catalog version for the items to be purchased. Defaults to most recent catalog. */ CatalogVersion?: string; @@ -4685,6 +4842,14 @@ declare module PlayFabClientModels { } + export interface SteamNamePlayFabIdPair { + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Steam identifier. */ + PlayFabId?: string; + /** Unique Steam identifier for a user, also known as Steam persona name. */ + SteamName?: string; + + } + export interface SteamPlayFabIdPair { /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Steam identifier. */ PlayFabId?: string; @@ -4739,6 +4904,7 @@ declare module PlayFabClientModels { } type SubscriptionProviderStatus = "NoError" + | "Cancelled" | "UnknownError" | "BillingError" @@ -4764,6 +4930,7 @@ declare module PlayFabClientModels { } type TitleActivationStatus = "None" + | "ActivatedTitleKey" | "PendingSteam" | "ActivatedSteam" @@ -4812,6 +4979,7 @@ declare module PlayFabClientModels { } type TradeStatus = "Invalid" + | "Opening" | "Open" | "Accepting" @@ -4820,6 +4988,7 @@ declare module PlayFabClientModels { | "Cancelled"; type TransactionStatus = "CreateCart" + | "Init" | "Approved" | "Succeeded" @@ -4877,6 +5046,12 @@ declare module PlayFabClientModels { } + export interface UnlinkBattleNetAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + + } + export interface UnlinkCustomIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Custom unique identifier for the user, generated by the title. If not specified, the most recently signed in Custom ID @@ -4934,6 +5109,16 @@ declare module PlayFabClientModels { } + export interface UnlinkGooglePlayGamesServicesAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + + } + + export interface UnlinkGooglePlayGamesServicesAccountResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface UnlinkIOSDeviceIDRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -5020,18 +5205,6 @@ declare module PlayFabClientModels { } - export interface UnlinkWindowsHelloAccountRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** SHA256 hash of the PublicKey generated by Windows Hello. */ - PublicKeyHint: string; - - } - - export interface UnlinkWindowsHelloAccountResponse extends PlayFabModule.IPlayFabResultCommon { - - } - export interface UnlinkXboxAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -5138,6 +5311,28 @@ declare module PlayFabClientModels { } + export interface UpdatePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Optional field used for concurrency control. One can ensure that the update operation will only be performed if the + * player's properties have not been updated by any other clients since last the version. + */ + ExpectedPropertiesVersion?: number; + /** Collection of properties to be set for a player. */ + Properties: UpdateProperty[]; + + } + + export interface UpdatePlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + + } + export interface UpdatePlayerStatisticsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -5150,6 +5345,14 @@ declare module PlayFabClientModels { } + export interface UpdateProperty { + /** Name of the custom property. Can contain Unicode letters and digits. They are limited in size. */ + Name: string; + /** Value of the custom property. Limited to booleans, numbers, and strings. */ + Value: any; + + } + export interface UpdateSharedGroupDataRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -5223,6 +5426,8 @@ declare module PlayFabClientModels { AndroidDeviceInfo?: UserAndroidDeviceInfo; /** Sign in with Apple account information, if an Apple account has been linked */ AppleAccountInfo?: UserAppleIdInfo; + /** Battle.net account information, if a Battle.net account has been linked */ + BattleNetAccountInfo?: UserBattleNetInfo; /** Timestamp indicating when the user account was created */ Created: string; /** Custom ID information, if a custom ID has been assigned */ @@ -5235,6 +5440,8 @@ declare module PlayFabClientModels { GameCenterInfo?: UserGameCenterInfo; /** User Google account information, if a Google account has been linked */ GoogleInfo?: UserGoogleInfo; + /** User Google Play Games account information, if a Google Play Games account has been linked */ + GooglePlayGamesInfo?: UserGooglePlayGamesInfo; /** User iOS device information, if an iOS device has been linked */ IosDeviceInfo?: UserIosDeviceInfo; /** User Kongregate account information, if a Kongregate account has been linked */ @@ -5249,8 +5456,10 @@ declare module PlayFabClientModels { PlayFabId?: string; /** Personal information for the user which is considered more sensitive */ PrivateInfo?: UserPrivateAccountInfo; - /** User PSN account information, if a PSN account has been linked */ + /** User PlayStation :tm: Network account information, if a PlayStation :tm: Network account has been linked */ PsnInfo?: UserPsnInfo; + /** Server Custom ID information, if a server custom ID has been assigned */ + ServerCustomIdInfo?: UserServerCustomIdInfo; /** User Steam information, if a Steam account has been linked */ SteamInfo?: UserSteamInfo; /** Title-specific information for the user account */ @@ -5259,8 +5468,6 @@ declare module PlayFabClientModels { TwitchInfo?: UserTwitchInfo; /** User account name in the PlayFab service */ Username?: string; - /** Windows Hello account information, if a Windows Hello account has been linked */ - WindowsHelloInfo?: UserWindowsHelloInfo; /** User XBox account information, if a XBox account has been linked */ XboxInfo?: UserXboxInfo; @@ -5278,6 +5485,14 @@ declare module PlayFabClientModels { } + export interface UserBattleNetInfo { + /** Battle.net identifier */ + BattleNetAccountId?: string; + /** Battle.net display name */ + BattleNetBattleTag?: string; + + } + export interface UserCustomIdInfo { /** Custom ID */ CustomId?: string; @@ -5285,6 +5500,7 @@ declare module PlayFabClientModels { } type UserDataPermission = "Private" + | "Public"; export interface UserDataRecord { @@ -5334,6 +5550,16 @@ declare module PlayFabClientModels { } + export interface UserGooglePlayGamesInfo { + /** Avatar image url of the Google Play Games player */ + GooglePlayGamesPlayerAvatarImageUrl?: string; + /** Display name of the Google Play Games player */ + GooglePlayGamesPlayerDisplayName?: string; + /** Google Play Games player ID */ + GooglePlayGamesPlayerId?: string; + + } + export interface UserIosDeviceInfo { /** iOS device ID */ IosDeviceId?: string; @@ -5371,6 +5597,7 @@ declare module PlayFabClientModels { } type UserOrigination = "Organic" + | "Steam" | "Google" | "Amazon" @@ -5387,13 +5614,16 @@ declare module PlayFabClientModels { | "XboxLive" | "Parse" | "Twitch" - | "WindowsHello" | "ServerCustomId" | "NintendoSwitchDeviceId" | "FacebookInstantGamesId" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserPrivateAccountInfo { /** user email address */ @@ -5402,13 +5632,19 @@ declare module PlayFabClientModels { } export interface UserPsnInfo { - /** PSN account ID */ + /** PlayStation :tm: Network account ID */ PsnAccountId?: string; - /** PSN online ID */ + /** PlayStation :tm: Network online ID */ PsnOnlineId?: string; } + export interface UserServerCustomIdInfo { + /** Custom ID */ + CustomId?: string; + + } + export interface UserSettings { /** Boolean for whether this player is eligible for gathering device info. */ GatherDeviceInfo: boolean; @@ -5467,17 +5703,11 @@ declare module PlayFabClientModels { } - export interface UserWindowsHelloInfo { - /** Windows Hello Device Name */ - WindowsHelloDeviceName?: string; - /** Windows Hello Public Key Hash */ - WindowsHelloPublicKeyHash?: string; - - } - export interface UserXboxInfo { /** XBox user ID */ XboxUserId?: string; + /** XBox user sandbox */ + XboxUserSandbox?: string; } @@ -5532,10 +5762,12 @@ declare module PlayFabClientModels { CurrencyCode?: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; + /** Base64 encoded receipt data, passed back by the App Store as a result of a successful purchase. */ + JwsReceiptData?: string; /** Amount of the stated currency paid, in centesimal units. */ PurchasePrice: number; /** Base64 encoded receipt data, passed back by the App Store as a result of a successful purchase. */ - ReceiptData: string; + ReceiptData?: string; } diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabCloudScriptApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabCloudScriptApi.d.ts index 5eeab994..38ac8fc3 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabCloudScriptApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabCloudScriptApi.d.ts @@ -9,63 +9,78 @@ declare module PlayFabCloudScriptModule { * custom server-side functionality you can implement, and it can be used in conjunction with virtually anything. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/executeentitycloudscript */ - ExecuteEntityCloudScript(request: PlayFabCloudScriptModels.ExecuteEntityCloudScriptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ExecuteEntityCloudScript(request: PlayFabCloudScriptModels.ExecuteEntityCloudScriptRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Cloud Script is one of PlayFab's most versatile features. It allows client code to request execution of any kind of * custom server-side functionality you can implement, and it can be used in conjunction with virtually anything. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/executefunction */ - ExecuteFunction(request: PlayFabCloudScriptModels.ExecuteFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ExecuteFunction(request: PlayFabCloudScriptModels.ExecuteFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets registered Azure Functions for a given title id and function name. + * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/getfunction + */ + GetFunction(request: PlayFabCloudScriptModels.GetFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Lists all currently registered Event Hub triggered Azure Functions for a given title. + * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/listeventhubfunctions + */ + ListEventHubFunctions(request: PlayFabCloudScriptModels.ListFunctionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all currently registered Azure Functions for a given title. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/listfunctions */ - ListFunctions(request: PlayFabCloudScriptModels.ListFunctionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListFunctions(request: PlayFabCloudScriptModels.ListFunctionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all currently registered HTTP triggered Azure Functions for a given title. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/listhttpfunctions */ - ListHttpFunctions(request: PlayFabCloudScriptModels.ListFunctionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListHttpFunctions(request: PlayFabCloudScriptModels.ListFunctionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all currently registered Queue triggered Azure Functions for a given title. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/listqueuedfunctions */ - ListQueuedFunctions(request: PlayFabCloudScriptModels.ListFunctionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListQueuedFunctions(request: PlayFabCloudScriptModels.ListFunctionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Generate an entity PlayStream event for the provided function result. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/postfunctionresultforentitytriggeredaction */ - PostFunctionResultForEntityTriggeredAction(request: PlayFabCloudScriptModels.PostFunctionResultForEntityTriggeredActionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + PostFunctionResultForEntityTriggeredAction(request: PlayFabCloudScriptModels.PostFunctionResultForEntityTriggeredActionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Generate an entity PlayStream event for the provided function result. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/postfunctionresultforfunctionexecution */ - PostFunctionResultForFunctionExecution(request: PlayFabCloudScriptModels.PostFunctionResultForFunctionExecutionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + PostFunctionResultForFunctionExecution(request: PlayFabCloudScriptModels.PostFunctionResultForFunctionExecutionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Generate a player PlayStream event for the provided function result. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/postfunctionresultforplayertriggeredaction */ - PostFunctionResultForPlayerTriggeredAction(request: PlayFabCloudScriptModels.PostFunctionResultForPlayerTriggeredActionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + PostFunctionResultForPlayerTriggeredAction(request: PlayFabCloudScriptModels.PostFunctionResultForPlayerTriggeredActionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Generate a PlayStream event for the provided function result. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/postfunctionresultforscheduledtask */ - PostFunctionResultForScheduledTask(request: PlayFabCloudScriptModels.PostFunctionResultForScheduledTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + PostFunctionResultForScheduledTask(request: PlayFabCloudScriptModels.PostFunctionResultForScheduledTaskRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Registers an event hub triggered Azure Function with a title. + * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/registereventhubfunction + */ + RegisterEventHubFunction(request: PlayFabCloudScriptModels.RegisterEventHubFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Registers an HTTP triggered Azure function with a title. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/registerhttpfunction */ - RegisterHttpFunction(request: PlayFabCloudScriptModels.RegisterHttpFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RegisterHttpFunction(request: PlayFabCloudScriptModels.RegisterHttpFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Registers a queue triggered Azure Function with a title. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/registerqueuedfunction */ - RegisterQueuedFunction(request: PlayFabCloudScriptModels.RegisterQueuedFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RegisterQueuedFunction(request: PlayFabCloudScriptModels.RegisterQueuedFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unregisters an Azure Function with a title. * https://docs.microsoft.com/rest/api/playfab/cloudscript/server-side-cloud-script/unregisterfunction */ - UnregisterFunction(request: PlayFabCloudScriptModels.UnregisterFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnregisterFunction(request: PlayFabCloudScriptModels.UnregisterFunctionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } @@ -82,6 +97,7 @@ declare module PlayFabCloudScriptModels { } type CloudScriptRevisionOption = "Live" + | "Latest" | "Specific"; @@ -96,14 +112,17 @@ declare module PlayFabCloudScriptModels { } type ContinentCode = "AF" + | "AN" | "AS" | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" + | "AX" | "AL" | "DZ" @@ -351,9 +370,11 @@ declare module PlayFabCloudScriptModels { | "EH" | "YE" | "ZM" - | "ZW"; + | "ZW" + | "Unknown"; type EmailVerificationStatus = "Unverified" + | "Pending" | "Confirmed"; @@ -369,6 +390,16 @@ declare module PlayFabCloudScriptModels { } + export interface EventHubFunctionModel { + /** The connection string for the event hub. */ + ConnectionString?: string; + /** The name of the event hub that triggers the Azure Function. */ + EventHubName?: string; + /** The name the function was registered under. */ + FunctionName?: string; + + } + export interface ExecuteCloudScriptResult extends PlayFabModule.IPlayFabResultCommon { /** Number of PlayFab API requests issued by the CloudScript function */ APIRequestsIssued: number; @@ -410,7 +441,7 @@ declare module PlayFabCloudScriptModels { export interface ExecuteEntityCloudScriptRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The name of the CloudScript function to execute */ FunctionName: string; @@ -435,7 +466,7 @@ declare module PlayFabCloudScriptModels { export interface ExecuteFunctionRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The name of the CloudScript function to execute */ FunctionName: string; @@ -458,6 +489,8 @@ declare module PlayFabCloudScriptModels { FunctionName?: string; /** The object returned from the function, if any */ FunctionResult?: any; + /** The size in bytes of the object returned from the function, if any */ + FunctionResultSize?: number; /** Flag indicating if the FunctionResult was too large and was subsequently dropped from this event. */ FunctionResultTooLarge?: boolean; @@ -486,6 +519,26 @@ declare module PlayFabCloudScriptModels { } + export interface GetFunctionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the function to register */ + FunctionName: string; + + } + + export interface GetFunctionResult extends PlayFabModule.IPlayFabResultCommon { + /** The connection string for the storage account containing the queue for a queue trigger Azure Function. */ + ConnectionString?: string; + /** The URL to be invoked to execute an HTTP triggered function. */ + FunctionUrl?: string; + /** The name of the queue for a queue trigger Azure Function. */ + QueueName?: string; + /** The trigger type for the function. */ + TriggerType?: string; + + } + export interface HttpFunctionModel { /** The name the function was registered under. */ FunctionName?: string; @@ -506,6 +559,12 @@ declare module PlayFabCloudScriptModels { } + export interface ListEventHubFunctionsResult extends PlayFabModule.IPlayFabResultCommon { + /** The list of EventHub triggered functions that are currently registered for the title. */ + Functions?: EventHubFunctionModel[]; + + } + export interface ListFunctionsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -545,6 +604,7 @@ declare module PlayFabCloudScriptModels { } type LoginIdentityProvider = "Unknown" + | "PlayFab" | "Custom" | "GameCenter" @@ -564,7 +624,11 @@ declare module PlayFabCloudScriptModels { | "FacebookInstantGames" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface LogStatement { /** Optional object accompanying the message as contextual information */ @@ -613,7 +677,11 @@ declare module PlayFabCloudScriptModels { Created?: string; /** Player display name */ DisplayName?: string; - /** List of experiment variants for the player. */ + /** + * List of experiment variants for the player. Note that these variants are not guaranteed to be up-to-date when returned + * during login because the player profile is updated only after login. Instead, use the LoginResult.TreatmentAssignment + * property during login to get the correct variants and variables. + */ ExperimentVariants?: string[]; /** UTC time when the player most recently logged in to the title */ LastLogin?: string; @@ -686,8 +754,6 @@ declare module PlayFabCloudScriptModels { export interface PostFunctionResultForPlayerTriggeredActionRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ - Entity?: EntityKey; /** The result of the function execution. */ FunctionResult: ExecuteFunctionResult; /** The player profile the function was invoked with. */ @@ -700,8 +766,6 @@ declare module PlayFabCloudScriptModels { export interface PostFunctionResultForScheduledTaskRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ - Entity: EntityKey; /** The result of the function execution */ FunctionResult: ExecuteFunctionResult; /** The id of the scheduled task that invoked the function. */ @@ -710,6 +774,7 @@ declare module PlayFabCloudScriptModels { } type PushNotificationPlatform = "ApplePushNotificationService" + | "GoogleCloudMessaging"; export interface PushNotificationRegistrationModel { @@ -730,6 +795,18 @@ declare module PlayFabCloudScriptModels { } + export interface RegisterEventHubFunctionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** A connection string for the namespace of the event hub for the Azure Function. */ + ConnectionString: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the event hub for the Azure Function. */ + EventHubName: string; + /** The name of the function to register */ + FunctionName: string; + + } + export interface RegisterHttpFunctionRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -794,6 +871,7 @@ declare module PlayFabCloudScriptModels { } type SubscriptionProviderStatus = "NoError" + | "Cancelled" | "UnknownError" | "BillingError" @@ -809,12 +887,14 @@ declare module PlayFabCloudScriptModels { } type TriggerType = "HTTP" - | "Queue"; + + | "Queue" + | "EventHub"; export interface UnregisterFunctionRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The name of the function to unregister */ + /** The name of the function to register */ FunctionName: string; } diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabDataApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabDataApi.d.ts index 9c817922..287d8c21 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabDataApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabDataApi.d.ts @@ -8,37 +8,37 @@ declare module PlayFabDataModule { * Abort pending file uploads to an entity's profile. * https://docs.microsoft.com/rest/api/playfab/data/file/abortfileuploads */ - AbortFileUploads(request: PlayFabDataModels.AbortFileUploadsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AbortFileUploads(request: PlayFabDataModels.AbortFileUploadsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Delete files on an entity's profile. * https://docs.microsoft.com/rest/api/playfab/data/file/deletefiles */ - DeleteFiles(request: PlayFabDataModels.DeleteFilesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteFiles(request: PlayFabDataModels.DeleteFilesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Finalize file uploads to an entity's profile. * https://docs.microsoft.com/rest/api/playfab/data/file/finalizefileuploads */ - FinalizeFileUploads(request: PlayFabDataModels.FinalizeFileUploadsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + FinalizeFileUploads(request: PlayFabDataModels.FinalizeFileUploadsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves file metadata from an entity's profile. * https://docs.microsoft.com/rest/api/playfab/data/file/getfiles */ - GetFiles(request: PlayFabDataModels.GetFilesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetFiles(request: PlayFabDataModels.GetFilesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves objects from an entity's profile. * https://docs.microsoft.com/rest/api/playfab/data/object/getobjects */ - GetObjects(request: PlayFabDataModels.GetObjectsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetObjects(request: PlayFabDataModels.GetObjectsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Initiates file uploads to an entity's profile. * https://docs.microsoft.com/rest/api/playfab/data/file/initiatefileuploads */ - InitiateFileUploads(request: PlayFabDataModels.InitiateFileUploadsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + InitiateFileUploads(request: PlayFabDataModels.InitiateFileUploadsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets objects on an entity's profile. * https://docs.microsoft.com/rest/api/playfab/data/object/setobjects */ - SetObjects(request: PlayFabDataModels.SetObjectsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetObjects(request: PlayFabDataModels.SetObjectsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } @@ -52,8 +52,11 @@ declare module PlayFabDataModels { /** Names of the files to have their pending uploads aborted. */ FileNames: string[]; /** - * The expected version of the profile, if set and doesn't match the current version of the profile the operation will not - * be performed. + * Optional field used for concurrency control. By specifying the previously returned ProfileVersion value from the + * InitiateFileUploads API or other APIs, you can ensure that the file upload abort operation is performed only if the + * profile has not been updated since you last loaded that version. If the profile for the same entity has been updated, + * the operation will fail with an EntityProfileVersionMismatch error. The conflicting update can be caused by any + * operation that modifies the entity profile, including SetObjects, FinalizeFileUploads, and UpdateStatistics. */ ProfileVersion?: number; @@ -75,8 +78,11 @@ declare module PlayFabDataModels { /** Names of the files to be deleted. */ FileNames: string[]; /** - * The expected version of the profile, if set and doesn't match the current version of the profile the operation will not - * be performed. + * Optional field used for concurrency control. By specifying the previously returned ProfileVersion value from the + * GetFiles API or other APIs, you can ensure that the file deletion is performed only if the profile has not been updated + * since you last loaded that version. If the profile for the same entity has been updated, the operation will fail with an + * EntityProfileVersionMismatch error. The conflicting update can be caused by any operation that modifies the entity + * profile, including SetObjects, FinalizeFileUploads, and UpdateStatistics. */ ProfileVersion?: number; @@ -105,7 +111,13 @@ declare module PlayFabDataModels { Entity: EntityKey; /** Names of the files to be finalized. Restricted to a-Z, 0-9, '(', ')', '_', '-' and '.' */ FileNames: string[]; - /** The current version of the profile, can be used for concurrency control during updates. */ + /** + * Field used for concurrency control. By specifying the previously returned ProfileVersion value from the + * InitiateFileUploads API, you can ensure that the file upload finalization is performed only if the profile has not been + * updated since you last loaded that version. If the profile for the same entity has been updated, the operation will fail + * with an EntityProfileVersionMismatch error. The conflicting update can be caused by any operation that modifies the + * entity profile, including SetObjects, FinalizeFileUploads, and UpdateStatistics. + */ ProfileVersion: number; } @@ -191,8 +203,11 @@ declare module PlayFabDataModels { /** Names of the files to be set. Restricted to a-Z, 0-9, '(', ')', '_', '-' and '.' */ FileNames: string[]; /** - * The expected version of the profile, if set and doesn't match the current version of the profile the operation will not - * be performed. + * Optional field used for concurrency control. By specifying the previously returned ProfileVersion value from the + * GetFiles API or other APIs, you can ensure that the file upload initiation is performed only if the profile has not been + * updated since you last loaded that version. If the profile for the same entity has been updated, the operation will fail + * with an EntityProfileVersionMismatch error. The conflicting update can be caused by any operation that modifies the + * entity profile, including SetObjects, FinalizeFileUploads, and UpdateStatistics. */ ProfileVersion?: number; @@ -219,6 +234,7 @@ declare module PlayFabDataModels { } type OperationTypes = "Created" + | "Updated" | "Deleted" | "None"; @@ -257,9 +273,11 @@ declare module PlayFabDataModels { /** The entity to perform this action on. */ Entity: EntityKey; /** - * Optional field used for concurrency control. By specifying the previously returned value of ProfileVersion from - * GetProfile API, you can ensure that the object set will only be performed if the profile has not been updated by any - * other clients since the version you last loaded. + * Optional field used for concurrency control. By specifying the previously returned ProfileVersion value from the + * GetObjects API or other APIs, you can ensure that the object update is performed only if the profile has not been + * updated since you last loaded that version. If the profile for the same entity has been updated, the operation will fail + * with an EntityProfileVersionMismatch error. The conflicting update can be caused by any operation that modifies the + * entity profile, including SetObjects, FinalizeFileUploads, and UpdateStatistics. */ ExpectedProfileVersion?: number; /** Collection of objects to set on the profile. */ diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabEconomyApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabEconomyApi.d.ts new file mode 100644 index 00000000..733020c5 --- /dev/null +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabEconomyApi.d.ts @@ -0,0 +1,2494 @@ +/// + +declare module PlayFabEconomyModule { + export interface IPlayFabEconomy { + ForgetAllCredentials(): void; + + /** + * Add inventory items. Up to 10,000 stacks of items can be added to a single inventory collection. Stack size is uncapped. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/addinventoryitems + */ + AddInventoryItems(request: PlayFabEconomyModels.AddInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates a new item in the working catalog using provided metadata. Note: SAS tokens provided are valid for 1 hour. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/createdraftitem + */ + CreateDraftItem(request: PlayFabEconomyModels.CreateDraftItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates one or more upload URLs which can be used by the client to upload raw file data. Content URls and uploaded + * content will be garbage collected after 24 hours if not attached to a draft or published item. Detailed pricing info + * around uploading content can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/pricing/meters/catalog-meters + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/createuploadurls + */ + CreateUploadUrls(request: PlayFabEconomyModels.CreateUploadUrlsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes all reviews, helpfulness votes, and ratings submitted by the entity specified. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/deleteentityitemreviews + */ + DeleteEntityItemReviews(request: PlayFabEconomyModels.DeleteEntityItemReviewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Delete an Inventory Collection. More information about Inventory Collections can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/inventory/collections + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/deleteinventorycollection + */ + DeleteInventoryCollection(request: PlayFabEconomyModels.DeleteInventoryCollectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Delete inventory items + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/deleteinventoryitems + */ + DeleteInventoryItems(request: PlayFabEconomyModels.DeleteInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Removes an item from working catalog and all published versions from the public catalog. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/deleteitem + */ + DeleteItem(request: PlayFabEconomyModels.DeleteItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Execute a list of Inventory Operations. A maximum list of 50 operations can be performed by a single request. There is + * also a limit to 300 items that can be modified/added in a single request. For example, adding a bundle with 50 items + * counts as 50 items modified. All operations must be done within a single inventory collection. This API has a reduced + * RPS compared to an individual inventory operation with Player Entities limited to 60 requests in 90 seconds. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/executeinventoryoperations + */ + ExecuteInventoryOperations(request: PlayFabEconomyModels.ExecuteInventoryOperationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Transfer a list of inventory items. A maximum list of 50 operations can be performed by a single request. When the + * response code is 202, one or more operations 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 1 day of the request by passing the TransactionToken to the GetInventoryOperationStatus API. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/executetransferoperations + */ + ExecuteTransferOperations(request: PlayFabEconomyModels.ExecuteTransferOperationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets the configuration for the catalog. Only Title Entities can call this API. There is a limit of 100 requests in 10 + * seconds for this API. More information about the Catalog Config can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/settings + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getcatalogconfig + */ + GetCatalogConfig(request: PlayFabEconomyModels.GetCatalogConfigRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves an item from the working catalog. This item represents the current working state of the item. GetDraftItem + * does not work off a cache of the Catalog and should be used when trying to get recent item updates. However, please note + * that item references data is cached and may take a few moments for changes to propagate. Note: SAS tokens provided are + * valid for 1 hour. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getdraftitem + */ + GetDraftItem(request: PlayFabEconomyModels.GetDraftItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves a paginated list of the items from the draft catalog. Up to 50 IDs can be retrieved in a single request. + * GetDraftItems does not work off a cache of the Catalog and should be used when trying to get recent item updates. Note: + * SAS tokens provided are valid for 1 hour. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getdraftitems + */ + GetDraftItems(request: PlayFabEconomyModels.GetDraftItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves a paginated list of the items from the draft catalog created by the Entity. Up to 50 items can be returned at + * once. You can use continuation tokens to paginate through results that return greater than the limit. + * GetEntityDraftItems does not work off a cache of the Catalog and should be used when trying to get recent item updates. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getentitydraftitems + */ + GetEntityDraftItems(request: PlayFabEconomyModels.GetEntityDraftItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets the submitted review for the specified item by the authenticated entity. Individual ratings and reviews data update + * in near real time with delays within a few seconds. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getentityitemreview + */ + GetEntityItemReview(request: PlayFabEconomyModels.GetEntityItemReviewRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get Inventory Collection Ids. Up to 50 Ids can be returned at once (or 250 with response compression enabled). You can + * use continuation tokens to paginate through results that return greater than the limit. It can take a few seconds for + * new collection Ids to show up. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/getinventorycollectionids + */ + GetInventoryCollectionIds(request: PlayFabEconomyModels.GetInventoryCollectionIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get current inventory items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/getinventoryitems + */ + GetInventoryItems(request: PlayFabEconomyModels.GetInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get the status of an inventory operation using an OperationToken. You can check on the operation status at anytime + * within 1 day of the request by passing the TransactionToken to the this API. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/getinventoryoperationstatus + */ + GetInventoryOperationStatus(request: PlayFabEconomyModels.GetInventoryOperationStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves an item from the public catalog. GetItem does not work off a cache of the Catalog and should be used when + * trying to get recent item updates. However, please note that item references data is cached and may take a few moments + * for changes to propagate. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getitem + */ + GetItem(request: PlayFabEconomyModels.GetItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Search for a given item and return a set of bundles and stores containing the item. Up to 50 items can be returned at + * once. You can use continuation tokens to paginate through results that return greater than the limit. This API is + * intended for tooling/automation scenarios and has a reduced RPS with Player Entities limited to 30 requests in 300 + * seconds and Title Entities limited to 100 requests in 10 seconds. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getitemcontainers + */ + GetItemContainers(request: PlayFabEconomyModels.GetItemContainersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets the moderation state for an item, including the concern category and string reason. More information about + * moderation states can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/ugc/moderation + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getitemmoderationstate + */ + GetItemModerationState(request: PlayFabEconomyModels.GetItemModerationStateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets the status of a publish of an item. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getitempublishstatus + */ + GetItemPublishStatus(request: PlayFabEconomyModels.GetItemPublishStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get a paginated set of reviews associated with the specified item. Individual ratings and reviews data update in near + * real time with delays within a few seconds. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getitemreviews + */ + GetItemReviews(request: PlayFabEconomyModels.GetItemReviewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get a summary of all ratings and reviews associated with the specified item. Summary ratings data is cached with update + * data coming within 15 minutes. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getitemreviewsummary + */ + GetItemReviewSummary(request: PlayFabEconomyModels.GetItemReviewSummaryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves items from the public catalog. Up to 50 items can be returned at once. GetItems does not work off a cache of + * the Catalog and should be used when trying to get recent item updates. However, please note that item references data is + * cached and may take a few moments for changes to propagate. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getitems + */ + GetItems(request: PlayFabEconomyModels.GetItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get transaction history for a player. Up to 50 Events can be returned at once (or 250 with response compression + * enabled). You can use continuation tokens to paginate through results that return greater than the limit. Getting + * transaction history has a lower RPS limit than getting a Player's inventory with Player Entities having a limit of 30 + * requests in 300 seconds. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/gettransactionhistory + */ + GetTransactionHistory(request: PlayFabEconomyModels.GetTransactionHistoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Initiates a publish of an item from the working catalog to the public catalog. You can use the GetItemPublishStatus API + * to track the state of the item publish. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/publishdraftitem + */ + PublishDraftItem(request: PlayFabEconomyModels.PublishDraftItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Purchase an item or bundle. Up to 10,000 stacks of items can be added to a single inventory collection. Stack size is + * uncapped. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/purchaseinventoryitems + */ + PurchaseInventoryItems(request: PlayFabEconomyModels.PurchaseInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Redeem items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/redeemappleappstoreinventoryitems + */ + RedeemAppleAppStoreInventoryItems(request: PlayFabEconomyModels.RedeemAppleAppStoreInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Redeem items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/redeemappleappstorewithjwsinventoryitems + */ + RedeemAppleAppStoreWithJwsInventoryItems(request: PlayFabEconomyModels.RedeemAppleAppStoreWithJwsInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Redeem items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/redeemgoogleplayinventoryitems + */ + RedeemGooglePlayInventoryItems(request: PlayFabEconomyModels.RedeemGooglePlayInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Redeem items from the Microsoft Store. Supported entitlement types are Developer Manager Consumable and Durable. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/redeemmicrosoftstoreinventoryitems + */ + RedeemMicrosoftStoreInventoryItems(request: PlayFabEconomyModels.RedeemMicrosoftStoreInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Redeem items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/redeemnintendoeshopinventoryitems + */ + RedeemNintendoEShopInventoryItems(request: PlayFabEconomyModels.RedeemNintendoEShopInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Redeem items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/redeemplaystationstoreinventoryitems + */ + RedeemPlayStationStoreInventoryItems(request: PlayFabEconomyModels.RedeemPlayStationStoreInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Redeem items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/redeemsteaminventoryitems + */ + RedeemSteamInventoryItems(request: PlayFabEconomyModels.RedeemSteamInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Submit a report for an item, indicating in what way the item is inappropriate. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/reportitem + */ + ReportItem(request: PlayFabEconomyModels.ReportItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Submit a report for a review + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/reportitemreview + */ + ReportItemReview(request: PlayFabEconomyModels.ReportItemReviewRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates or updates a review for the specified item. More information around the caching surrounding item ratings and + * reviews can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/ratings#ratings-design-and-caching + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/reviewitem + */ + ReviewItem(request: PlayFabEconomyModels.ReviewItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Executes a search against the public catalog using the provided search parameters and returns a set of paginated + * results. SearchItems uses a cache of the catalog with item updates taking up to a few minutes to propagate. You should + * use the GetItem API for when trying to immediately get recent item updates. More information about the Search API can be + * found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/search + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/searchitems + */ + SearchItems(request: PlayFabEconomyModels.SearchItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Sets the moderation state for an item, including the concern category and string reason. More information about + * moderation states can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/ugc/moderation + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/setitemmoderationstate + */ + SetItemModerationState(request: PlayFabEconomyModels.SetItemModerationStateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Submit a vote for a review, indicating whether the review was helpful or unhelpful. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/submititemreviewvote + */ + SubmitItemReviewVote(request: PlayFabEconomyModels.SubmitItemReviewVoteRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Subtract inventory items. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/subtractinventoryitems + */ + SubtractInventoryItems(request: PlayFabEconomyModels.SubtractInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Submit a request to takedown one or more reviews. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/takedownitemreviews + */ + TakedownItemReviews(request: PlayFabEconomyModels.TakedownItemReviewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * 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 1 day of the request by passing the + * TransactionToken to the GetInventoryOperationStatus API. 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 + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/transferinventoryitems + */ + TransferInventoryItems(request: PlayFabEconomyModels.TransferInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Updates the configuration for the catalog. Only Title Entities can call this API. There is a limit of 10 requests in 10 + * seconds for this API. More information about the Catalog Config can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/settings + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/updatecatalogconfig + */ + UpdateCatalogConfig(request: PlayFabEconomyModels.UpdateCatalogConfigRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Update the metadata for an item in the working catalog. Note: SAS tokens provided are valid for 1 hour. + * https://docs.microsoft.com/rest/api/playfab/economy/catalog/updatedraftitem + */ + UpdateDraftItem(request: PlayFabEconomyModels.UpdateDraftItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Update inventory items + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/updateinventoryitems + */ + UpdateInventoryItems(request: PlayFabEconomyModels.UpdateInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + + } +} + +declare module PlayFabEconomyModels { + export interface AddInventoryItemsOperation { + /** The amount to add to the current item amount. */ + Amount?: number; + /** The duration to add to the current item expiration date. */ + DurationInSeconds?: number; + /** The inventory item the operation applies to. */ + Item?: InventoryItemReference; + /** The values to apply to a stack newly created by this operation. */ + NewStackValues?: InitialValues; + + } + + export interface AddInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The amount to add for the current item. */ + Amount?: number; + /** + * The id of the entity's collection to perform this action on. (Default="default"). The number of inventory collections is + * unlimited. + */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The duration to add to the current item expiration date. */ + DurationInSeconds?: number; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** + * The Idempotency ID for this request. Idempotency IDs can be used to prevent operation replay in the medium term but will + * be garbage collected eventually. + */ + IdempotencyId?: string; + /** The inventory item the request applies to. */ + Item?: InventoryItemReference; + /** The values to apply to a stack newly created by this request. */ + NewStackValues?: InitialValues; + + } + + export interface AddInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** The idempotency id used in the request. */ + IdempotencyId?: string; + /** The ids of transactions that occurred as a result of the request. */ + TransactionIds?: string[]; + + } + + export interface AlternateId { + /** Type of the alternate ID. */ + Type?: string; + /** Value of the alternate ID. */ + Value?: string; + + } + + export interface CatalogAlternateId { + /** Type of the alternate ID. */ + Type?: string; + /** Value of the alternate ID. */ + Value?: string; + + } + + export interface CatalogConfig { + /** A list of player entity keys that will have admin permissions. There is a maximum of 64 entities that can be added. */ + AdminEntities?: EntityKey[]; + /** The set of configuration that only applies to catalog items. */ + Catalog?: CatalogSpecificConfig; + /** A list of deep link formats. Up to 10 can be added. */ + DeepLinkFormats?: DeepLinkFormat[]; + /** + * A list of display properties to index. Up to 5 mappings can be added per Display Property Type. More info on display + * properties can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/content-types-tags-and-properties#displayproperties + */ + DisplayPropertyIndexInfos?: DisplayPropertyIndexInfo[]; + /** The set of configuration that only applies to Files. */ + File?: FileConfig; + /** The set of configuration that only applies to Images. */ + Image?: ImageConfig; + /** Flag defining whether catalog is enabled. */ + IsCatalogEnabled: boolean; + /** + * A list of Platforms that can be applied to catalog items. Each platform can have a maximum character length of 40 and up + * to 128 platforms can be listed. + */ + Platforms?: string[]; + /** The set of configuration that only applies to Ratings and Reviews. */ + Review?: ReviewConfig; + /** A set of player entity keys that are allowed to review content. There is a maximum of 128 entities that can be added. */ + ReviewerEntities?: EntityKey[]; + /** The set of configuration that only applies to user generated contents. */ + UserGeneratedContent?: UserGeneratedContentSpecificConfig; + + } + + export interface CatalogItem { + /** + * The alternate IDs associated with this item. An alternate ID can be set to 'FriendlyId' or any of the supported + * marketplace names. + */ + AlternateIds?: CatalogAlternateId[]; + /** The set of content/files associated with this item. Up to 100 files can be added to an item. */ + Contents?: Content[]; + /** The client-defined type of the item. */ + ContentType?: string; + /** The date and time when this item was created. */ + CreationDate?: string; + /** The ID of the creator of this catalog item. */ + CreatorEntity?: EntityKey; + /** The set of platform specific deep links for this item. */ + DeepLinks?: DeepLink[]; + /** + * The Stack Id that will be used as default for this item in Inventory when an explicit one is not provided. This + * DefaultStackId can be a static stack id or '{guid}', which will generate a unique stack id for the item. If null, + * Inventory's default stack id will be used. + */ + DefaultStackId?: string; + /** + * A dictionary of localized descriptions. Key is language code and localized string is the value. The NEUTRAL locale is + * required. Descriptions have a 10000 character limit per country code. + */ + Description?: { [key: string]: string | null }; + /** + * Game specific properties for display purposes. This is an arbitrary JSON blob. The Display Properties field has a 10000 + * byte limit per item. + */ + DisplayProperties?: any; + /** The user provided version of the item for display purposes. Maximum character length of 50. */ + DisplayVersion?: string; + /** The date of when the item will cease to be available. If not provided then the product will be available indefinitely. */ + EndDate?: string; + /** The current ETag value that can be used for optimistic concurrency in the If-None-Match header. */ + ETag?: string; + /** The unique ID of the item. */ + Id?: string; + /** + * The images associated with this item. Images can be thumbnails or screenshots. Up to 100 images can be added to an item. + * Only .png, .jpg, .gif, and .bmp file types can be uploaded + */ + Images?: Image[]; + /** Indicates if the item is hidden. */ + IsHidden?: boolean; + /** + * The item references associated with this item. For example, the items in a Bundle/Store/Subscription. Every item can + * have up to 50 item references. + */ + ItemReferences?: CatalogItemReference[]; + /** + * A dictionary of localized keywords. Key is language code and localized list of keywords is the value. Keywords have a 50 + * character limit per keyword and up to 32 keywords can be added per country code. + */ + Keywords?: { [key: string]: KeywordSet }; + /** The date and time this item was last updated. */ + LastModifiedDate?: string; + /** The moderation state for this item. */ + Moderation?: ModerationState; + /** The platforms supported by this item. */ + Platforms?: string[]; + /** The prices the item can be purchased for. */ + PriceOptions?: CatalogPriceOptions; + /** Rating summary for this item. */ + Rating?: Rating; + /** The real price the item was purchased for per marketplace. */ + RealMoneyPriceDetails?: RealMoneyPriceDetails; + /** The date of when the item will be available. If not provided then the product will appear immediately. */ + StartDate?: string; + /** Optional details for stores items. */ + StoreDetails?: StoreDetails; + /** The list of tags that are associated with this item. Up to 32 tags can be added to an item. */ + Tags?: string[]; + /** + * A dictionary of localized titles. Key is language code and localized string is the value. The NEUTRAL locale is + * required. Titles have a 512 character limit per country code. + */ + Title?: { [key: string]: string | null }; + /** + * The high-level type of the item. The following item types are supported: bundle, catalogItem, currency, store, ugc, + * subscription. + */ + Type?: string; + + } + + export interface CatalogItemReference { + /** The amount of the catalog item. */ + Amount?: number; + /** The unique ID of the catalog item. */ + Id?: string; + /** The prices the catalog item can be purchased for. */ + PriceOptions?: CatalogPriceOptions; + + } + + export interface CatalogPrice { + /** The amounts of the catalog item price. Each price can have up to 15 item amounts. */ + Amounts?: CatalogPriceAmount[]; + /** The per-unit amount this price can be used to purchase. */ + UnitAmount?: number; + /** The per-unit duration this price can be used to purchase. The maximum duration is 100 years. */ + UnitDurationInSeconds?: number; + + } + + export interface CatalogPriceAmount { + /** The amount of the price. */ + Amount: number; + /** The Item Id of the price. */ + ItemId?: string; + + } + + export interface CatalogPriceAmountOverride { + /** The exact value that should be utilized in the override. */ + FixedValue?: number; + /** The id of the item this override should utilize. */ + ItemId?: string; + /** + * The multiplier that will be applied to the base Catalog value to determine what value should be utilized in the + * override. + */ + Multiplier?: number; + + } + + export interface CatalogPriceOptions { + /** Prices of the catalog item. An item can have up to 15 prices */ + Prices?: CatalogPrice[]; + + } + + export interface CatalogPriceOptionsOverride { + /** The prices utilized in the override. */ + Prices?: CatalogPriceOverride[]; + + } + + export interface CatalogPriceOverride { + /** The currency amounts utilized in the override for a singular price. */ + Amounts?: CatalogPriceAmountOverride[]; + + } + + export interface CatalogSpecificConfig { + /** + * The set of content types that will be used for validation. Each content type can have a maximum character length of 40 + * and up to 128 types can be listed. + */ + ContentTypes?: string[]; + /** + * The set of tags that will be used for validation. Each tag can have a maximum character length of 32 and up to 1024 tags + * can be listed. + */ + Tags?: string[]; + + } + + export interface CategoryRatingConfig { + /** Name of the category. */ + Name?: string; + + } + + type ConcernCategory = "None" + + | "OffensiveContent" + | "ChildExploitation" + | "MalwareOrVirus" + | "PrivacyConcerns" + | "MisleadingApp" + | "PoorPerformance" + | "ReviewResponse" + | "SpamAdvertising" + | "Profanity"; + + export interface Content { + /** The content unique ID. */ + Id?: string; + /** + * The maximum client version that this content is compatible with. Client Versions can be up to 3 segments separated by + * periods(.) and each segment can have a maximum value of 65535. + */ + MaxClientVersion?: string; + /** + * The minimum client version that this content is compatible with. Client Versions can be up to 3 segments separated by + * periods(.) and each segment can have a maximum value of 65535. + */ + MinClientVersion?: string; + /** + * The list of tags that are associated with this content. Tags must be defined in the Catalog Config before being used in + * content. + */ + Tags?: string[]; + /** The client-defined type of the content. Content Types must be defined in the Catalog Config before being used. */ + Type?: string; + /** The Azure CDN URL for retrieval of the catalog item binary content. */ + Url?: string; + + } + + type CountryCode = "AF" + + | "AX" + | "AL" + | "DZ" + | "AS" + | "AD" + | "AO" + | "AI" + | "AQ" + | "AG" + | "AR" + | "AM" + | "AW" + | "AU" + | "AT" + | "AZ" + | "BS" + | "BH" + | "BD" + | "BB" + | "BY" + | "BE" + | "BZ" + | "BJ" + | "BM" + | "BT" + | "BO" + | "BQ" + | "BA" + | "BW" + | "BV" + | "BR" + | "IO" + | "BN" + | "BG" + | "BF" + | "BI" + | "KH" + | "CM" + | "CA" + | "CV" + | "KY" + | "CF" + | "TD" + | "CL" + | "CN" + | "CX" + | "CC" + | "CO" + | "KM" + | "CG" + | "CD" + | "CK" + | "CR" + | "CI" + | "HR" + | "CU" + | "CW" + | "CY" + | "CZ" + | "DK" + | "DJ" + | "DM" + | "DO" + | "EC" + | "EG" + | "SV" + | "GQ" + | "ER" + | "EE" + | "ET" + | "FK" + | "FO" + | "FJ" + | "FI" + | "FR" + | "GF" + | "PF" + | "TF" + | "GA" + | "GM" + | "GE" + | "DE" + | "GH" + | "GI" + | "GR" + | "GL" + | "GD" + | "GP" + | "GU" + | "GT" + | "GG" + | "GN" + | "GW" + | "GY" + | "HT" + | "HM" + | "VA" + | "HN" + | "HK" + | "HU" + | "IS" + | "IN" + | "ID" + | "IR" + | "IQ" + | "IE" + | "IM" + | "IL" + | "IT" + | "JM" + | "JP" + | "JE" + | "JO" + | "KZ" + | "KE" + | "KI" + | "KP" + | "KR" + | "KW" + | "KG" + | "LA" + | "LV" + | "LB" + | "LS" + | "LR" + | "LY" + | "LI" + | "LT" + | "LU" + | "MO" + | "MK" + | "MG" + | "MW" + | "MY" + | "MV" + | "ML" + | "MT" + | "MH" + | "MQ" + | "MR" + | "MU" + | "YT" + | "MX" + | "FM" + | "MD" + | "MC" + | "MN" + | "ME" + | "MS" + | "MA" + | "MZ" + | "MM" + | "NA" + | "NR" + | "NP" + | "NL" + | "NC" + | "NZ" + | "NI" + | "NE" + | "NG" + | "NU" + | "NF" + | "MP" + | "NO" + | "OM" + | "PK" + | "PW" + | "PS" + | "PA" + | "PG" + | "PY" + | "PE" + | "PH" + | "PN" + | "PL" + | "PT" + | "PR" + | "QA" + | "RE" + | "RO" + | "RU" + | "RW" + | "BL" + | "SH" + | "KN" + | "LC" + | "MF" + | "PM" + | "VC" + | "WS" + | "SM" + | "ST" + | "SA" + | "SN" + | "RS" + | "SC" + | "SL" + | "SG" + | "SX" + | "SK" + | "SI" + | "SB" + | "SO" + | "ZA" + | "GS" + | "SS" + | "ES" + | "LK" + | "SD" + | "SR" + | "SJ" + | "SZ" + | "SE" + | "CH" + | "SY" + | "TW" + | "TJ" + | "TZ" + | "TH" + | "TL" + | "TG" + | "TK" + | "TO" + | "TT" + | "TN" + | "TR" + | "TM" + | "TC" + | "TV" + | "UG" + | "UA" + | "AE" + | "GB" + | "US" + | "UM" + | "UY" + | "UZ" + | "VU" + | "VE" + | "VN" + | "VG" + | "VI" + | "WF" + | "EH" + | "YE" + | "ZM" + | "ZW" + | "Unknown"; + + export interface CreateDraftItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Metadata describing the new catalog item to be created. */ + Item?: CatalogItem; + /** Whether the item should be published immediately. This value is optional, defaults to false. */ + Publish: boolean; + + } + + export interface CreateDraftItemResponse extends PlayFabModule.IPlayFabResultCommon { + /** Updated metadata describing the catalog item just created. */ + Item?: CatalogItem; + + } + + export interface CreateUploadUrlsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Description of the files to be uploaded by the client. */ + Files?: UploadInfo[]; + + } + + export interface CreateUploadUrlsResponse extends PlayFabModule.IPlayFabResultCommon { + /** List of URLs metadata for the files to be uploaded by the client. */ + UploadUrls?: UploadUrlMetadata[]; + + } + + export interface DeepLink { + /** Target platform for this deep link. */ + Platform?: string; + /** The deep link for this platform. */ + Url?: string; + + } + + export interface DeepLinkFormat { + /** The format of the deep link to return. The format should contain '{id}' to represent where the item ID should be placed. */ + Format?: string; + /** The target platform for the deep link. */ + Platform?: string; + + } + + export interface DeleteEntityItemReviewsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + + } + + export interface DeleteEntityItemReviewsResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteInventoryCollectionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The inventory collection id the request applies to. */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity the request is about. Set to the caller by default. */ + Entity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + + } + + export interface DeleteInventoryCollectionResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DeleteInventoryItemsOperation { + /** The inventory item the operation applies to. */ + Item?: InventoryItemReference; + + } + + export interface DeleteInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * The id of the entity's collection to perform this action on. (Default="default"). The number of inventory collections is + * unlimited. + */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** + * The Idempotency ID for this request. Idempotency IDs can be used to prevent operation replay in the medium term but will + * be garbage collected eventually. + */ + IdempotencyId?: string; + /** The inventory item the request applies to. */ + Item?: InventoryItemReference; + + } + + export interface DeleteInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** ETags are used for concurrency checking when updating resources. */ + ETag?: string; + /** The idempotency id used in the request. */ + IdempotencyId?: string; + /** The ids of transactions that occurred as a result of the request. */ + TransactionIds?: string[]; + + } + + export interface DeleteItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface DeleteItemResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface DisplayPropertyIndexInfo { + /** The property name in the 'DisplayProperties' property to be indexed. */ + Name?: string; + /** The type of the property to be indexed. */ + Type?: string; + + } + + type DisplayPropertyType = "None" + + | "QueryDateTime" + | "QueryDouble" + | "QueryString" + | "SearchString"; + + export interface EntityKey { + /** Unique ID of the entity. */ + Id: string; + /** Entity type. See https://docs.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types */ + Type?: string; + + } + + export interface ExecuteInventoryOperationsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * The id of the entity's collection to perform this action on. (Default="default"). The number of inventory collections is + * unlimited. + */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** + * The Idempotency ID for this request. Idempotency IDs can be used to prevent operation replay in the medium term but will + * be garbage collected eventually. + */ + IdempotencyId?: string; + /** + * The operations to run transactionally. The operations will be executed in-order sequentially and will succeed or fail as + * a batch. Up to 50 operations can be added. + */ + Operations?: InventoryOperation[]; + + } + + export interface ExecuteInventoryOperationsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** The idempotency id used in the request. */ + IdempotencyId?: string; + /** The ids of the transactions that occurred as a result of the request. */ + TransactionIds?: string[]; + + } + + export interface ExecuteTransferOperationsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The inventory collection id the request is transferring from. (Default="default") */ + GivingCollectionId?: string; + /** The entity the request is transferring from. Set to the caller by default. */ + GivingEntity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + GivingETag?: string; + /** The idempotency id for the request. */ + IdempotencyId?: string; + /** + * The transfer operations to run transactionally. The operations will be executed in-order sequentially and will succeed + * or fail as a batch. Up to 50 operations can be added. + */ + Operations?: TransferInventoryItemsOperation[]; + /** The inventory collection id the request is transferring to. (Default="default") */ + ReceivingCollectionId?: string; + /** The entity the request is transferring to. Set to the caller by default. */ + ReceivingEntity?: EntityKey; + + } + + export interface ExecuteTransferOperationsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * ETags are used for concurrency checking when updating resources (before transferring from). This value will be empty if + * the operation has not completed yet. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + GivingETag?: string; + /** The ids of transactions that occurred as a result of the request's giving action. */ + GivingTransactionIds?: string[]; + /** The Idempotency ID for this request. */ + IdempotencyId?: string; + /** + * The transfer operation status. Possible values are 'InProgress' or 'Completed'. If the operation has completed, the + * response code will be 200. Otherwise, it will be 202. + */ + OperationStatus?: string; + /** + * The token that can be used to get the status of the transfer operation. This will only have a value if OperationStatus + * is 'InProgress'. + */ + OperationToken?: string; + /** + * ETags are used for concurrency checking when updating resources (before transferring to). This value will be empty if + * the operation has not completed yet. + */ + ReceivingETag?: string; + /** The ids of transactions that occurred as a result of the request's receiving action. */ + ReceivingTransactionIds?: string[]; + + } + + export interface FileConfig { + /** + * The set of content types that will be used for validation. Each content type can have a maximum character length of 40 + * and up to 128 types can be listed. + */ + ContentTypes?: string[]; + /** + * The set of tags that will be used for validation. Each tag can have a maximum character length of 32 and up to 1024 tags + * can be listed. + */ + Tags?: string[]; + + } + + export interface FilterOptions { + /** + * The OData filter utilized. Mutually exclusive with 'IncludeAllItems'. More info about Filter Complexity limits can be + * found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/search#limits + */ + Filter?: string; + /** The flag that overrides the filter and allows for returning all catalog items. Mutually exclusive with 'Filter'. */ + IncludeAllItems?: boolean; + + } + + export interface GetCatalogConfigRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + + } + + export interface GetCatalogConfigResponse extends PlayFabModule.IPlayFabResultCommon { + /** The catalog configuration. */ + Config?: CatalogConfig; + + } + + export interface GetDraftItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface GetDraftItemResponse extends PlayFabModule.IPlayFabResultCommon { + /** Full metadata of the catalog item requested. */ + Item?: CatalogItem; + + } + + export interface GetDraftItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** List of item alternate IDs. */ + AlternateIds?: CatalogAlternateId[]; + /** + * An opaque token used to retrieve the next page of items created by the caller, if any are available. Should be null on + * initial request. + */ + ContinuationToken?: string; + /** Number of items to retrieve. This value is optional. Default value is 10. */ + Count?: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** List of Item Ids. */ + Ids?: string[]; + + } + + export interface GetDraftItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + /** A set of items created by the entity. */ + Items?: CatalogItem[]; + + } + + export interface GetEntityDraftItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * An opaque token used to retrieve the next page of items created by the caller, if any are available. Should be null on + * initial request. + */ + ContinuationToken?: string; + /** Number of items to retrieve. This value is optional. Default value is 10. */ + Count: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * OData Filter to refine the items returned. CatalogItem properties 'type' can be used in the filter. For example: "type + * eq 'ugc'" + */ + Filter?: string; + + } + + export interface GetEntityDraftItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + /** A set of items created by the entity. */ + Items?: CatalogItem[]; + + } + + export interface GetEntityItemReviewRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface GetEntityItemReviewResponse extends PlayFabModule.IPlayFabResultCommon { + /** The review the entity submitted for the requested item. */ + Review?: Review; + + } + + export interface GetInventoryCollectionIdsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An opaque token used to retrieve the next page of collection ids, if any are available. */ + ContinuationToken?: string; + /** Number of items to retrieve. This value is optional. The default value is 10 */ + Count: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity the request is about. Set to the caller by default. */ + Entity?: EntityKey; + + } + + export interface GetInventoryCollectionIdsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The requested inventory collection ids. */ + CollectionIds?: string[]; + /** An opaque token used to retrieve the next page of collection ids, if any are available. */ + ContinuationToken?: string; + + } + + export interface GetInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** + * An opaque token used to retrieve the next page of items in the inventory, if any are available. Should be null on + * initial request. + */ + ContinuationToken?: string; + /** Number of items to retrieve. This value is optional. Maximum page size is 50. The default value is 10 */ + Count: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * OData Filter to refine the items returned. InventoryItem properties 'type', 'id', and 'stackId' can be used in the + * filter. For example: "type eq 'currency'" + */ + Filter?: string; + + } + + export interface GetInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** The requested inventory items. */ + Items?: InventoryItem[]; + + } + + export interface GetInventoryOperationStatusRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The token to get the status of the inventory operation. */ + OperationToken?: string; + + } + + export interface GetInventoryOperationStatusResponse extends PlayFabModule.IPlayFabResultCommon { + /** The inventory operation status. */ + OperationStatus?: string; + + } + + export interface GetItemContainersRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** + * An opaque token used to retrieve the next page of items in the inventory, if any are available. Should be null on + * initial request. + */ + ContinuationToken?: string; + /** Number of items to retrieve. This value is optional. Default value is 10. */ + Count: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface GetItemContainersResponse extends PlayFabModule.IPlayFabResultCommon { + /** List of Bundles and Stores containing the requested items. */ + Containers?: CatalogItem[]; + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + + } + + export interface GetItemModerationStateRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface GetItemModerationStateResponse extends PlayFabModule.IPlayFabResultCommon { + /** The current moderation state for the requested item. */ + State?: ModerationState; + + } + + export interface GetItemPublishStatusRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface GetItemPublishStatusResponse extends PlayFabModule.IPlayFabResultCommon { + /** High level status of the published item. */ + Result?: string; + /** Descriptive message about the current status of the publish. */ + StatusMessage?: string; + + } + + export interface GetItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface GetItemResponse extends PlayFabModule.IPlayFabResultCommon { + /** The item result. */ + Item?: CatalogItem; + + } + + export interface GetItemReviewsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + /** Number of items to retrieve. This value is optional. Default value is 10. */ + Count: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The unique ID of the item. */ + Id?: string; + /** + * An OData orderBy used to order the results of the query. Possible values are Helpfulness, Rating, and Submitted (For + * example: "Submitted desc") + */ + OrderBy?: string; + + } + + export interface GetItemReviewsResponse extends PlayFabModule.IPlayFabResultCommon { + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + /** The paginated set of results. */ + Reviews?: Review[]; + + } + + export interface GetItemReviewSummaryRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface GetItemReviewSummaryResponse extends PlayFabModule.IPlayFabResultCommon { + /** The least favorable review for this item. */ + LeastFavorableReview?: Review; + /** The most favorable review for this item. */ + MostFavorableReview?: Review; + /** The summary of ratings associated with this item. */ + Rating?: Rating; + /** The total number of reviews associated with this item. */ + ReviewsCount: number; + + } + + export interface GetItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** List of item alternate IDs. */ + AlternateIds?: CatalogAlternateId[]; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** List of Item Ids. */ + Ids?: string[]; + + } + + export interface GetItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** Metadata of set of items. */ + Items?: CatalogItem[]; + + } + + export interface GetTransactionHistoryRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** An opaque token used to retrieve the next page of items, if any are available. Should be null on initial request. */ + ContinuationToken?: string; + /** + * Number of items to retrieve. This value is optional. The default value is 10. The maximum value is 50, or 250 if + * response compression is enabled. + */ + Count: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * An OData filter used to refine the TransactionHistory. Transaction properties 'timestamp', 'transactionid', 'apiname' + * and 'operationtype' can be used in the filter. Properties 'transactionid', 'apiname', and 'operationtype' cannot be used + * together in a single request. The 'timestamp' property can be combined with 'apiname' or 'operationtype' in a single + * request. For example: "timestamp ge 2023-06-20T23:30Z" or "transactionid eq '10'" or "(timestamp ge 2023-06-20T23:30Z) + * and (apiname eq 'AddInventoryItems')". By default, a 6 month timespan from the current date is used. + */ + Filter?: string; + /** + * An OData orderby to order TransactionHistory results. The only supported values are 'timestamp asc' or 'timestamp desc'. + * Default orderby is 'timestamp asc' + */ + OrderBy?: string; + + } + + export interface GetTransactionHistoryResponse extends PlayFabModule.IPlayFabResultCommon { + /** An opaque token used to retrieve the next page of items, if any are available. Should be null on initial request. */ + ContinuationToken?: string; + /** The requested inventory transactions. */ + Transactions?: Transaction[]; + + } + + export interface GooglePlayProductPurchase { + /** The Product ID (SKU) of the InApp product purchased from the Google Play store. */ + ProductId?: string; + /** The token provided to the player's device when the product was purchased */ + Token?: string; + + } + + type HelpfulnessVote = "None" + + | "UnHelpful" + | "Helpful"; + + export interface Image { + /** The image unique ID. */ + Id?: string; + /** + * The client-defined tag associated with this image. Tags must be defined in the Catalog Config before being used in + * images + */ + Tag?: string; + /** Images can be defined as either a "thumbnail" or "screenshot". There can only be one "thumbnail" image per item. */ + Type?: string; + /** The URL for retrieval of the image. */ + Url?: string; + + } + + export interface ImageConfig { + /** + * The set of tags that will be used for validation. Each tag can have a maximum character length of 32 and up to 1024 tags + * can be listed. + */ + Tags?: string[]; + + } + + export interface InitialValues { + /** Game specific properties for display purposes. The Display Properties field has a 1000 byte limit. */ + DisplayProperties?: any; + + } + + export interface InventoryItem { + /** The amount of the item. */ + Amount?: number; + /** + * Game specific properties for display purposes. This is an arbitrary JSON blob. The Display Properties field has a 1000 + * byte limit. + */ + DisplayProperties?: any; + /** Only used for subscriptions. The date of when the item will expire in UTC. */ + ExpirationDate?: string; + /** The id of the item. This should correspond to the item id in the catalog. */ + Id?: string; + /** The stack id of the item. */ + StackId?: string; + /** Only used for subscriptions. The date of when the item started in UTC. */ + StartDate?: string; + /** The type of the item. This should correspond to the item type in the catalog. */ + Type?: string; + + } + + export interface InventoryItemReference { + /** The inventory item alternate id the request applies to. */ + AlternateId?: AlternateId; + /** The inventory item id the request applies to. */ + Id?: string; + /** The inventory stack id the request should redeem to. (Default="default") */ + StackId?: string; + + } + + export interface InventoryOperation { + /** The add operation. */ + Add?: AddInventoryItemsOperation; + /** The delete operation. */ + Delete?: DeleteInventoryItemsOperation; + /** The purchase operation. */ + Purchase?: PurchaseInventoryItemsOperation; + /** The subtract operation. */ + Subtract?: SubtractInventoryItemsOperation; + /** The transfer operation. */ + Transfer?: TransferInventoryItemsOperation; + /** The update operation. */ + Update?: UpdateInventoryItemsOperation; + + } + + export interface KeywordSet { + /** A list of localized keywords. */ + Values?: string[]; + + } + + export interface ModerationState { + /** The date and time this moderation state was last updated. */ + LastModifiedDate?: string; + /** The current stated reason for the associated item being moderated. */ + Reason?: string; + /** The current moderation status for the associated item. */ + Status?: string; + + } + + type ModerationStatus = "Unknown" + + | "AwaitingModeration" + | "Approved" + | "Rejected"; + + export interface 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. + */ + SegmentIds?: string[]; + + } + + export interface PublishDraftItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * ETag of the catalog item to published from the working catalog to the public catalog. Used for optimistic concurrency. + * If the provided ETag does not match the ETag in the current working catalog, the request will be rejected. If not + * provided, the current version of the document in the working catalog will be published. + */ + ETag?: string; + /** The unique ID of the item. */ + Id?: string; + + } + + export interface PublishDraftItemResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + type PublishResult = "Unknown" + + | "Pending" + | "Succeeded" + | "Failed" + | "Canceled"; + + export interface PurchaseInventoryItemsOperation { + /** The amount to purchase. */ + Amount?: number; + /** + * Indicates whether stacks reduced to an amount of 0 during the operation should be deleted from the inventory. (Default = + * false) + */ + DeleteEmptyStacks: boolean; + /** The duration to purchase. */ + DurationInSeconds?: number; + /** The inventory item the operation applies to. */ + Item?: InventoryItemReference; + /** The values to apply to a stack newly created by this operation. */ + NewStackValues?: InitialValues; + /** + * The per-item price the item is expected to be purchased at. This must match a value configured in the Catalog or + * specified Store. + */ + PriceAmounts?: PurchasePriceAmount[]; + /** The id of the Store to purchase the item from. */ + StoreId?: string; + + } + + export interface PurchaseInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The amount to purchase. */ + Amount?: number; + /** + * The id of the entity's collection to perform this action on. (Default="default"). The number of inventory collections is + * unlimited. + */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Indicates whether stacks reduced to an amount of 0 during the request should be deleted from the inventory. + * (Default=false) + */ + DeleteEmptyStacks: boolean; + /** The duration to purchase. */ + DurationInSeconds?: number; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** + * The Idempotency ID for this request. Idempotency IDs can be used to prevent operation replay in the medium term but will + * be garbage collected eventually. + */ + IdempotencyId?: string; + /** The inventory item the request applies to. */ + Item?: InventoryItemReference; + /** The values to apply to a stack newly created by this request. */ + NewStackValues?: InitialValues; + /** + * The per-item price the item is expected to be purchased at. This must match a value configured in the Catalog or + * specified Store. + */ + PriceAmounts?: PurchasePriceAmount[]; + /** The id of the Store to purchase the item from. */ + StoreId?: string; + + } + + export interface PurchaseInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** The idempotency id used in the request. */ + IdempotencyId?: string; + /** The ids of transactions that occurred as a result of the request. */ + TransactionIds?: string[]; + + } + + export interface PurchaseOverride { + + } + + export interface PurchaseOverridesInfo { + + } + + export interface PurchasePriceAmount { + /** The amount of the inventory item to use in the purchase . */ + Amount: number; + /** The inventory item id to use in the purchase . */ + ItemId?: string; + /** The inventory stack id the to use in the purchase. Set to "default" by default */ + StackId?: string; + + } + + export interface Rating { + /** The average rating for this item. */ + Average?: number; + /** The total count of 1 star ratings for this item. */ + Count1Star?: number; + /** The total count of 2 star ratings for this item. */ + Count2Star?: number; + /** The total count of 3 star ratings for this item. */ + Count3Star?: number; + /** The total count of 4 star ratings for this item. */ + Count4Star?: number; + /** The total count of 5 star ratings for this item. */ + Count5Star?: number; + /** The total count of ratings for this item. */ + TotalCount?: number; + + } + + export interface RealMoneyPriceDetails { + /** The 'AppleAppStore' price amount per CurrencyCode. 'USD' supported only. */ + AppleAppStorePrices?: { [key: string]: number }; + /** The 'GooglePlay' price amount per CurrencyCode. 'USD' supported only. */ + GooglePlayPrices?: { [key: string]: number }; + /** The 'MicrosoftStore' price amount per CurrencyCode. 'USD' supported only. */ + MicrosoftStorePrices?: { [key: string]: number }; + /** The 'NintendoEShop' price amount per CurrencyCode. 'USD' supported only. */ + NintendoEShopPrices?: { [key: string]: number }; + /** The 'PlayStationStore' price amount per CurrencyCode. 'USD' supported only. */ + PlayStationStorePrices?: { [key: string]: number }; + /** The 'Steam' price amount per CurrencyCode. 'USD' supported only. */ + SteamPrices?: { [key: string]: number }; + + } + + export interface RedeemAppleAppStoreInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The receipt provided by the Apple marketplace upon successful purchase. */ + Receipt?: string; + + } + + export interface RedeemAppleAppStoreInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of failed redemptions from the external marketplace. */ + Failed?: RedemptionFailure[]; + /** The list of successful redemptions from the external marketplace. */ + Succeeded?: RedemptionSuccess[]; + /** The Transaction IDs associated with the inventory modifications */ + TransactionIds?: string[]; + + } + + export interface RedeemAppleAppStoreWithJwsInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The JWS representation of a transaction. */ + JWSTransactions: string[]; + + } + + export interface RedeemAppleAppStoreWithJwsInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of failed redemptions from the external marketplace. */ + Failed?: RedemptionFailure[]; + /** The list of successful redemptions from the external marketplace. */ + Succeeded?: RedemptionSuccess[]; + /** The Transaction IDs associated with the inventory modifications */ + TransactionIds?: string[]; + + } + + export interface RedeemGooglePlayInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The list of purchases to redeem */ + Purchases?: GooglePlayProductPurchase[]; + + } + + export interface RedeemGooglePlayInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of failed redemptions from the external marketplace. */ + Failed?: RedemptionFailure[]; + /** The list of successful redemptions from the external marketplace. */ + Succeeded?: RedemptionSuccess[]; + /** The Transaction IDs associated with the inventory modifications */ + TransactionIds?: string[]; + + } + + export interface RedeemMicrosoftStoreInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * Xbox Token used for delegated business partner authentication. Token provided by the Xbox Live SDK method + * GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). + */ + XboxToken?: string; + + } + + export interface RedeemMicrosoftStoreInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of failed redemptions from the external marketplace. */ + Failed?: RedemptionFailure[]; + /** The list of successful redemptions from the external marketplace. */ + Succeeded?: RedemptionSuccess[]; + /** The Transaction IDs associated with the inventory modifications */ + TransactionIds?: string[]; + + } + + export interface RedeemNintendoEShopInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The Nintendo provided token authorizing redemption */ + NintendoServiceAccountIdToken?: string; + + } + + export interface RedeemNintendoEShopInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of failed redemptions from the external marketplace. */ + Failed?: RedemptionFailure[]; + /** The list of successful redemptions from the external marketplace. */ + Succeeded?: RedemptionSuccess[]; + /** The Transaction IDs associated with the inventory modifications */ + TransactionIds?: string[]; + + } + + export interface RedeemPlayStationStoreInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Auth code returned by PlayStation :tm: Network OAuth system. */ + AuthorizationCode?: string; + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** Redirect URI supplied to PlayStation :tm: Network when requesting an auth code. */ + RedirectUri?: string; + /** Optional Service Label to pass into the request. */ + ServiceLabel?: string; + + } + + export interface RedeemPlayStationStoreInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of failed redemptions from the external marketplace. */ + Failed?: RedemptionFailure[]; + /** The list of successful redemptions from the external marketplace. */ + Succeeded?: RedemptionSuccess[]; + /** The Transaction IDs associated with the inventory modifications */ + TransactionIds?: string[]; + + } + + export interface RedeemSteamInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The id of the entity's collection to perform this action on. (Default="default") */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + + } + + export interface RedeemSteamInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of failed redemptions from the external marketplace. */ + Failed?: RedemptionFailure[]; + /** The list of successful redemptions from the external marketplace. */ + Succeeded?: RedemptionSuccess[]; + /** The Transaction IDs associated with the inventory modifications */ + TransactionIds?: string[]; + + } + + export interface RedemptionFailure { + /** The marketplace failure code. */ + FailureCode?: string; + /** The marketplace error details explaining why the offer failed to redeem. */ + FailureDetails?: string; + /** The Marketplace Alternate ID being redeemed. */ + MarketplaceAlternateId?: string; + /** The transaction id in the external marketplace. */ + MarketplaceTransactionId?: string; + + } + + export interface RedemptionSuccess { + /** The timestamp for when the redeem expired. */ + ExpirationTimestamp?: string; + /** The Marketplace Alternate ID being redeemed. */ + MarketplaceAlternateId?: string; + /** The transaction id in the external marketplace. */ + MarketplaceTransactionId?: string; + /** The timestamp for when the redeem was completed. */ + SuccessTimestamp: string; + + } + + export interface ReportItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** Category of concern for this report. */ + ConcernCategory?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + /** The string reason for this report. */ + Reason?: string; + + } + + export interface ReportItemResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface ReportItemReviewRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID of the item associated with the review. */ + AlternateId?: CatalogAlternateId; + /** The reason this review is being reported. */ + ConcernCategory?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The string ID of the item associated with the review. */ + ItemId?: string; + /** The string reason for this report. */ + Reason?: string; + /** The ID of the review to submit a report for. */ + ReviewId?: string; + + } + + export interface ReportItemReviewResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface Review { + /** The star rating associated with each selected category in this review. */ + CategoryRatings?: { [key: string]: number }; + /** The number of negative helpfulness votes for this review. */ + HelpfulNegative: number; + /** The number of positive helpfulness votes for this review. */ + HelpfulPositive: number; + /** Indicates whether the review author has the item installed. */ + IsInstalled: boolean; + /** The ID of the item being reviewed. */ + ItemId?: string; + /** The version of the item being reviewed. */ + ItemVersion?: string; + /** The locale for which this review was submitted in. */ + Locale?: string; + /** Star rating associated with this review. */ + Rating: number; + /** The ID of the author of the review. */ + ReviewerEntity?: EntityKey; + /** The ID of the review. */ + ReviewId?: string; + /** The full text of this review. */ + ReviewText?: string; + /** The date and time this review was last submitted. */ + Submitted: string; + /** The title of this review. */ + Title?: string; + + } + + export interface ReviewConfig { + /** A set of categories that can be applied toward ratings and reviews. */ + CategoryRatings?: CategoryRatingConfig[]; + + } + + export interface ReviewItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The unique ID of the item. */ + Id?: string; + /** The review to submit. */ + Review?: Review; + + } + + export interface ReviewItemResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface ReviewTakedown { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The ID of the item associated with the review to take down. */ + ItemId?: string; + /** The ID of the review to take down. */ + ReviewId?: string; + + } + + export interface SearchItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + /** Number of items to retrieve. This value is optional. Maximum page size is 50. Default value is 10. */ + Count: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * An OData filter used to refine the search query (For example: "type eq 'ugc'"). More info about Filter Complexity limits + * can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/search#limits + */ + Filter?: string; + /** The locale to be returned in the result. */ + Language?: string; + /** An OData orderBy used to order the results of the search query. For example: "rating/average asc" */ + OrderBy?: string; + /** The text to search for. */ + Search?: string; + /** + * An OData select query option used to augment the search results. If not defined, the default search result metadata will + * be returned. + */ + Select?: string; + /** The store to restrict the search request to. */ + Store?: StoreReference; + + } + + export interface SearchItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** An opaque token used to retrieve the next page of items, if any are available. */ + ContinuationToken?: string; + /** The paginated set of results for the search query. */ + Items?: CatalogItem[]; + + } + + export interface SetItemModerationStateRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID associated with this item. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The unique ID of the item. */ + Id?: string; + /** The reason for the moderation state change for the associated item. */ + Reason?: string; + /** The status to set for the associated item. */ + Status?: string; + + } + + export interface SetItemModerationStateResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface StoreDetails { + /** The options for the filter in filter-based stores. These options are mutually exclusive with item references. */ + FilterOptions?: FilterOptions; + /** The permissions that control which players can purchase from the store. */ + Permissions?: Permissions; + /** The global prices utilized in the store. These options are mutually exclusive with price options in item references. */ + PriceOptionsOverride?: CatalogPriceOptionsOverride; + + } + + export interface StoreReference { + /** An alternate ID of the store. */ + AlternateId?: CatalogAlternateId; + /** The unique ID of the store. */ + Id?: string; + + } + + export interface SubmitItemReviewVoteRequest extends PlayFabModule.IPlayFabRequestCommon { + /** An alternate ID of the item associated with the review. */ + AlternateId?: CatalogAlternateId; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** The string ID of the item associated with the review. */ + ItemId?: string; + /** The ID of the review to submit a helpfulness vote for. */ + ReviewId?: string; + /** The helpfulness vote of the review. */ + Vote?: string; + + } + + export interface SubmitItemReviewVoteResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface SubtractInventoryItemsOperation { + /** The amount to subtract from the current item amount. */ + Amount?: number; + /** + * Indicates whether stacks reduced to an amount of 0 during the request should be deleted from the inventory. (Default = + * false). + */ + DeleteEmptyStacks: boolean; + /** The duration to subtract from the current item expiration date. */ + DurationInSeconds?: number; + /** The inventory item the operation applies to. */ + Item?: InventoryItemReference; + + } + + export interface SubtractInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The amount to subtract for the current item. */ + Amount?: number; + /** + * The id of the entity's collection to perform this action on. (Default="default"). The number of inventory collections is + * unlimited. + */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Indicates whether stacks reduced to an amount of 0 during the request should be deleted from the inventory. + * (Default=false) + */ + DeleteEmptyStacks: boolean; + /** The duration to subtract from the current item expiration date. */ + DurationInSeconds?: number; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** + * The Idempotency ID for this request. Idempotency IDs can be used to prevent operation replay in the medium term but will + * be garbage collected eventually. + */ + IdempotencyId?: string; + /** The inventory item the request applies to. */ + Item?: InventoryItemReference; + + } + + export interface SubtractInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** The idempotency id used in the request. */ + IdempotencyId?: string; + /** The ids of transactions that occurred as a result of the request. */ + TransactionIds?: string[]; + + } + + export interface TakedownItemReviewsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The set of reviews to take down. */ + Reviews?: ReviewTakedown[]; + + } + + export interface TakedownItemReviewsResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface Transaction { + /** The API call that caused this transaction. */ + ApiName?: string; + /** Additional details about the transaction. Null if it was not a clawback operation. */ + ClawbackDetails?: TransactionClawbackDetails; + /** The custom tags associated with this transactions. */ + CustomTags?: { [key: string]: string | null }; + /** The type of item that the the operation occurred on. */ + ItemType?: string; + /** The operations that occurred. */ + Operations?: TransactionOperation[]; + /** The type of operation that was run. */ + OperationType?: string; + /** Additional details about the transaction. Null if it was not a purchase operation. */ + PurchaseDetails?: TransactionPurchaseDetails; + /** Additional details about the transaction. Null if it was not a redeem operation. */ + RedeemDetails?: TransactionRedeemDetails; + /** The time this transaction occurred in UTC. */ + Timestamp: string; + /** The id of the transaction. This should be treated like an opaque token. */ + TransactionId?: string; + /** Additional details about the transaction. Null if it was not a transfer operation. */ + TransferDetails?: TransactionTransferDetails; + + } + + export interface TransactionClawbackDetails { + /** The id of the clawed back operation. */ + TransactionIdClawedback?: string; + + } + + export interface TransactionOperation { + /** The amount of items in this transaction. */ + Amount?: number; + /** The duration modified in this transaction. */ + DurationInSeconds?: number; + /** The friendly id of the items in this transaction. */ + ItemFriendlyId?: string; + /** The item id of the items in this transaction. */ + ItemId?: string; + /** The type of item that the operation occurred on. */ + ItemType?: string; + /** The stack id of the items in this transaction. */ + StackId?: string; + /** The type of the operation that occurred. */ + Type?: string; + + } + + export interface TransactionPurchaseDetails { + /** The friendly id of the item that was purchased. */ + ItemFriendlyId?: string; + /** The id of the item that was purchased. */ + ItemId?: string; + /** The friendly id of the Store the item was purchased from or null. */ + StoreFriendlyId?: string; + /** The id of the Store the item was purchased from or null. */ + StoreId?: string; + + } + + export interface TransactionRedeemDetails { + /** The marketplace that the offer is being redeemed from. */ + Marketplace?: string; + /** The transaction Id returned from the marketplace. */ + MarketplaceTransactionId?: string; + /** The offer Id of the item being redeemed. */ + OfferId?: string; + + } + + export interface TransactionTransferDetails { + /** The collection id the items were transferred from or null if it was the current collection. */ + GivingCollectionId?: string; + /** The entity the items were transferred from or null if it was the current entity. */ + GivingEntity?: EntityKey; + /** The collection id the items were transferred to or null if it was the current collection. */ + ReceivingCollectionId?: string; + /** The entity the items were transferred to or null if it was the current entity. */ + ReceivingEntity?: EntityKey; + /** The id of the transfer that occurred. */ + TransferId?: string; + + } + + export interface TransferInventoryItemsOperation { + /** The amount to transfer. */ + Amount?: number; + /** + * Indicates whether stacks reduced to an amount of 0 during the operation should be deleted from the inventory. (Default = + * false) + */ + DeleteEmptyStacks: boolean; + /** The inventory item the operation is transferring from. */ + GivingItem?: InventoryItemReference; + /** The values to apply to a stack newly created by this operation. */ + NewStackValues?: InitialValues; + /** The inventory item the operation is transferring to. */ + ReceivingItem?: InventoryItemReference; + + } + + export interface TransferInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The amount to transfer . */ + Amount?: number; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Indicates whether stacks reduced to an amount of 0 during the request should be deleted from the inventory. (Default = + * false) + */ + DeleteEmptyStacks: boolean; + /** The inventory collection id the request is transferring from. (Default="default") */ + GivingCollectionId?: string; + /** The entity the request is transferring from. Set to the caller by default. */ + GivingEntity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources (before transferring from). More information about using + * ETags can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + GivingETag?: string; + /** The inventory item the request is transferring from. */ + GivingItem?: InventoryItemReference; + /** The idempotency id for the request. */ + IdempotencyId?: string; + /** The values to apply to a stack newly created by this request. */ + NewStackValues?: InitialValues; + /** The inventory collection id the request is transferring to. (Default="default") */ + ReceivingCollectionId?: string; + /** The entity the request is transferring to. Set to the caller by default. */ + ReceivingEntity?: EntityKey; + /** The inventory item the request is transferring to. */ + ReceivingItem?: InventoryItemReference; + + } + + export interface TransferInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * ETags are used for concurrency checking when updating resources (after transferring from). More information about using + * ETags can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + GivingETag?: string; + /** The ids of transactions that occurred as a result of the request's giving action. */ + GivingTransactionIds?: string[]; + /** The idempotency id for the request. */ + IdempotencyId?: string; + /** + * The transfer operation status. Possible values are 'InProgress' or 'Completed'. If the operation has completed, the + * response code will be 200. Otherwise, it will be 202. + */ + OperationStatus?: string; + /** + * The token that can be used to get the status of the transfer operation. This will only have a value if OperationStatus + * is 'InProgress'. + */ + OperationToken?: string; + /** The ids of transactions that occurred as a result of the request's receiving action. */ + ReceivingTransactionIds?: string[]; + + } + + export interface UpdateCatalogConfigRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The updated catalog configuration. */ + Config?: CatalogConfig; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + + } + + export interface UpdateCatalogConfigResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface UpdateDraftItemRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Updated metadata describing the catalog item to be updated. */ + Item?: CatalogItem; + /** Whether the item should be published immediately. This value is optional, defaults to false. */ + Publish: boolean; + + } + + export interface UpdateDraftItemResponse extends PlayFabModule.IPlayFabResultCommon { + /** Updated metadata describing the catalog item just updated. */ + Item?: CatalogItem; + + } + + export interface UpdateInventoryItemsOperation { + /** The inventory item to update with the specified values. */ + Item?: InventoryItem; + + } + + export interface UpdateInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * The id of the entity's collection to perform this action on. (Default="default"). The number of inventory collections is + * unlimited. + */ + CollectionId?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity to perform this action on. */ + Entity?: EntityKey; + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** + * The Idempotency ID for this request. Idempotency IDs can be used to prevent operation replay in the medium term but will + * be garbage collected eventually. + */ + IdempotencyId?: string; + /** The inventory item to update with the specified values. */ + Item?: InventoryItem; + + } + + export interface UpdateInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * ETags are used for concurrency checking when updating resources. More information about using ETags can be found here: + * https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags + */ + ETag?: string; + /** The idempotency id used in the request. */ + IdempotencyId?: string; + /** The ids of transactions that occurred as a result of the request. */ + TransactionIds?: string[]; + + } + + export interface UploadInfo { + /** Name of the file to be uploaded. */ + FileName?: string; + + } + + export interface UploadUrlMetadata { + /** Name of the file for which this upload URL was requested. */ + FileName?: string; + /** Unique ID for the binary content to be uploaded to the target URL. */ + Id?: string; + /** URL for the binary content to be uploaded to. */ + Url?: string; + + } + + export interface UserGeneratedContentSpecificConfig { + /** The set of content types that will be used for validation. */ + ContentTypes?: string[]; + /** The set of tags that will be used for validation. */ + Tags?: string[]; + + } + + +} diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabEventsApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabEventsApi.d.ts index 2d9b9edf..6bcc412f 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabEventsApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabEventsApi.d.ts @@ -4,22 +4,193 @@ declare module PlayFabEventsModule { export interface IPlayFabEvents { ForgetAllCredentials(): void; + /** + * Creates a new telemetry key for the title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/createtelemetrykey + */ + CreateTelemetryKey(request: PlayFabEventsModels.CreateTelemetryKeyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes a Data Connection from a title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/deletedataconnection + */ + DeleteDataConnection(request: PlayFabEventsModels.DeleteDataConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes a telemetry key configured for the title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/deletetelemetrykey + */ + DeleteTelemetryKey(request: PlayFabEventsModels.DeleteTelemetryKeyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves a single Data Connection associated with a title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/getdataconnection + */ + GetDataConnection(request: PlayFabEventsModels.GetDataConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets information about a telemetry key configured for the title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/gettelemetrykey + */ + GetTelemetryKey(request: PlayFabEventsModels.GetTelemetryKeyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the list of Data Connections associated with a title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/listdataconnections + */ + ListDataConnections(request: PlayFabEventsModels.ListDataConnectionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Lists all telemetry keys configured for the title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/listtelemetrykeys + */ + ListTelemetryKeys(request: PlayFabEventsModels.ListTelemetryKeysRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Creates or updates a Data Connection on a title. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/setdataconnection + */ + SetDataConnection(request: PlayFabEventsModels.SetDataConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Sets a Data Connection for the title to either the active or deactivated state. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/setdataconnectionactive + */ + SetDataConnectionActive(request: PlayFabEventsModels.SetDataConnectionActiveRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Sets a telemetry key to the active or deactivated state. + * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/settelemetrykeyactive + */ + SetTelemetryKeyActive(request: PlayFabEventsModels.SetTelemetryKeyActiveRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Write batches of entity based events to PlayStream. The namespace of the Event must be 'custom' or start with 'custom.'. * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/writeevents */ - WriteEvents(request: PlayFabEventsModels.WriteEventsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WriteEvents(request: PlayFabEventsModels.WriteEventsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Write batches of entity based events to as Telemetry events (bypass PlayStream). The namespace must be 'custom' or start * with 'custom.' * https://docs.microsoft.com/rest/api/playfab/events/playstream-events/writetelemetryevents */ - WriteTelemetryEvents(request: PlayFabEventsModels.WriteEventsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WriteTelemetryEvents(request: PlayFabEventsModels.WriteEventsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } declare module PlayFabEventsModels { + export interface CreateTelemetryKeyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** The name of the new key. Telemetry key names must be unique within the scope of the title. */ + KeyName: string; + + } + + export interface CreateTelemetryKeyResponse extends PlayFabModule.IPlayFabResultCommon { + /** Details about the newly created telemetry key. */ + NewKeyDetails?: TelemetryKeyDetails; + + } + + export interface DataConnectionAzureBlobSettings { + /** Name of the storage account. */ + AccountName?: string; + /** Name of the container. */ + ContainerName?: string; + /** Azure Entra Tenant Id. */ + TenantId?: string; + + } + + export interface DataConnectionAzureDataExplorerSettings { + /** The URI of the ADX cluster. */ + ClusterUri?: string; + /** The database to write to. */ + Database?: string; + /** The table to write to. */ + Table?: string; + + } + + export interface DataConnectionDetails { + /** Settings of the data connection. */ + ConnectionSettings: DataConnectionSettings; + /** Whether or not the connection is currently active. */ + IsActive: boolean; + /** The name of the data connection. */ + Name: string; + /** Current status of the data connection, if any. */ + Status?: DataConnectionStatusDetails; + /** The type of data connection. */ + Type: string; + + } + + type DataConnectionErrorState = "OK" + + | "Error"; + + export interface DataConnectionFabricKQLSettings { + /** The URI of the Fabric cluster. */ + ClusterUri?: string; + /** The database to write to. */ + Database?: string; + /** The table to write to. */ + Table?: string; + + } + + export interface DataConnectionSettings { + /** Settings if the type of connection is AzureBlobStorage. */ + AzureBlobSettings?: DataConnectionAzureBlobSettings; + /** Settings if the type of connection is AzureDataExplorer. */ + AzureDataExplorerSettings?: DataConnectionAzureDataExplorerSettings; + /** Settings if the type of connection is FabricKQL. */ + AzureFabricKQLSettings?: DataConnectionFabricKQLSettings; + + } + + export interface DataConnectionStatusDetails { + /** The name of the error affecting the data connection, if any. */ + Error?: string; + /** A description of the error affecting the data connection, if any. This may be empty for some errors. */ + ErrorMessage?: string; + /** The most recent time of the error affecting the data connection, if any. */ + MostRecentErrorTime?: string; + /** Indicates if the connection is in a normal state or error state. */ + State?: string; + + } + + type DataConnectionType = "AzureBlobStorage" + + | "AzureDataExplorer" + | "FabricKQL"; + + export interface DeleteDataConnectionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the data connection to delete. */ + Name: string; + + } + + export interface DeleteDataConnectionResponse extends PlayFabModule.IPlayFabResultCommon { + /** Indicates whether or not the connection was deleted as part of the request. */ + WasDeleted: boolean; + + } + + export interface DeleteTelemetryKeyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** The name of the key to delete. */ + KeyName: string; + + } + + export interface DeleteTelemetryKeyResponse extends PlayFabModule.IPlayFabResultCommon { + /** Indicates whether or not the key was deleted. If false, no key with that name existed. */ + WasKeyDeleted: boolean; + + } + export interface EntityKey { /** Unique ID of the entity. */ Id: string; @@ -61,10 +232,141 @@ declare module PlayFabEventsModels { } + export interface GetDataConnectionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the data connection to retrieve. */ + Name: string; + + } + + export interface GetDataConnectionResponse extends PlayFabModule.IPlayFabResultCommon { + /** The details of the queried Data Connection. */ + DataConnection?: DataConnectionDetails; + + } + + export interface GetTelemetryKeyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** The name of the key to retrieve. */ + KeyName: string; + + } + + export interface GetTelemetryKeyResponse extends PlayFabModule.IPlayFabResultCommon { + /** Details about the requested telemetry key. */ + KeyDetails?: TelemetryKeyDetails; + + } + + export interface ListDataConnectionsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + + } + + export interface ListDataConnectionsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of existing Data Connections. */ + DataConnections?: DataConnectionDetails[]; + + } + + export interface ListTelemetryKeysRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + + } + + export interface ListTelemetryKeysResponse extends PlayFabModule.IPlayFabResultCommon { + /** The telemetry keys configured for the title. */ + KeyDetails?: TelemetryKeyDetails[]; + + } + + export interface SetDataConnectionActiveRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Whether to set the data connection to active (true) or deactivated (false). */ + Active: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the data connection to update. */ + Name: string; + + } + + export interface SetDataConnectionActiveResponse extends PlayFabModule.IPlayFabResultCommon { + /** The most current details about the data connection that was to be updated. */ + DataConnection?: DataConnectionDetails; + /** + * Indicates whether or not the data connection was updated. If false, the data connection was already in the desired + * state. + */ + WasUpdated: boolean; + + } + + export interface SetDataConnectionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Settings of the data connection. */ + ConnectionSettings: DataConnectionSettings; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Whether or not the connection is currently active. */ + IsActive: boolean; + /** The name of the data connection to update or create. */ + Name: string; + /** The type of data connection. */ + Type: string; + + } + + export interface SetDataConnectionResponse extends PlayFabModule.IPlayFabResultCommon { + /** The details of the Data Connection to be created or updated. */ + DataConnection?: DataConnectionDetails; + + } + + export interface SetTelemetryKeyActiveRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Whether to set the key to active (true) or deactivated (false). */ + Active: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** The name of the key to update. */ + KeyName: string; + + } + + export interface SetTelemetryKeyActiveResponse extends PlayFabModule.IPlayFabResultCommon { + /** The most current details about the telemetry key that was to be updated. */ + KeyDetails?: TelemetryKeyDetails; + /** Indicates whether or not the key was updated. If false, the key was already in the desired state. */ + WasKeyUpdated: boolean; + + } + + export interface TelemetryKeyDetails { + /** When the key was created. */ + CreateTime: string; + /** Whether or not the key is currently active. Deactivated keys cannot be used for telemetry ingestion. */ + IsActive: boolean; + /** The key that can be distributed to clients for use during telemetry ingestion. */ + KeyValue?: string; + /** When the key was last updated. */ + LastUpdateTime: string; + /** The name of the key. Telemetry key names are unique within the scope of the title. */ + Name?: string; + + } + export interface WriteEventsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Collection of events to write to PlayStream. */ + /** The collection of events to write. Up to 200 events can be written per request. */ Events: EventContents[]; } diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabExperimentationApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabExperimentationApi.d.ts index 1c557cf1..07e0c851 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabExperimentationApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabExperimentationApi.d.ts @@ -8,73 +8,74 @@ declare module PlayFabExperimentationModule { * Creates a new experiment exclusion group for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/createexclusiongroup */ - CreateExclusionGroup(request: PlayFabExperimentationModels.CreateExclusionGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateExclusionGroup(request: PlayFabExperimentationModels.CreateExclusionGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a new experiment for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/createexperiment */ - CreateExperiment(request: PlayFabExperimentationModels.CreateExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateExperiment(request: PlayFabExperimentationModels.CreateExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes an existing exclusion group for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/deleteexclusiongroup */ - DeleteExclusionGroup(request: PlayFabExperimentationModels.DeleteExclusionGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteExclusionGroup(request: PlayFabExperimentationModels.DeleteExclusionGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes an existing experiment for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/deleteexperiment */ - DeleteExperiment(request: PlayFabExperimentationModels.DeleteExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteExperiment(request: PlayFabExperimentationModels.DeleteExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the details of all exclusion groups for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/getexclusiongroups */ - GetExclusionGroups(request: PlayFabExperimentationModels.GetExclusionGroupsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetExclusionGroups(request: PlayFabExperimentationModels.GetExclusionGroupsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the details of all exclusion groups for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/getexclusiongrouptraffic */ - GetExclusionGroupTraffic(request: PlayFabExperimentationModels.GetExclusionGroupTrafficRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetExclusionGroupTraffic(request: PlayFabExperimentationModels.GetExclusionGroupTrafficRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the details of all experiments for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/getexperiments */ - GetExperiments(request: PlayFabExperimentationModels.GetExperimentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetExperiments(request: PlayFabExperimentationModels.GetExperimentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the latest scorecard of the experiment for the title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/getlatestscorecard */ - GetLatestScorecard(request: PlayFabExperimentationModels.GetLatestScorecardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLatestScorecard(request: PlayFabExperimentationModels.GetLatestScorecardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the treatment assignments for a player for every running experiment in the title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/gettreatmentassignment */ - GetTreatmentAssignment(request: PlayFabExperimentationModels.GetTreatmentAssignmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTreatmentAssignment(request: PlayFabExperimentationModels.GetTreatmentAssignmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Starts an existing experiment for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/startexperiment */ - StartExperiment(request: PlayFabExperimentationModels.StartExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + StartExperiment(request: PlayFabExperimentationModels.StartExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Stops an existing experiment for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/stopexperiment */ - StopExperiment(request: PlayFabExperimentationModels.StopExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + StopExperiment(request: PlayFabExperimentationModels.StopExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates an existing exclusion group for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/updateexclusiongroup */ - UpdateExclusionGroup(request: PlayFabExperimentationModels.UpdateExclusionGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateExclusionGroup(request: PlayFabExperimentationModels.UpdateExclusionGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates an existing experiment for a title. * https://docs.microsoft.com/rest/api/playfab/experimentation/experimentation/updateexperiment */ - UpdateExperiment(request: PlayFabExperimentationModels.UpdateExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateExperiment(request: PlayFabExperimentationModels.UpdateExperimentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } declare module PlayFabExperimentationModels { type AnalysisTaskState = "Waiting" + | "ReadyForSubmission" | "SubmittingToPipeline" | "Running" @@ -211,11 +212,13 @@ declare module PlayFabExperimentationModels { } type ExperimentState = "New" + | "Started" | "Stopped" | "Deleted"; type ExperimentType = "Active" + | "Snapshot"; export interface GetExclusionGroupsRequest extends PlayFabModule.IPlayFabRequestCommon { @@ -273,7 +276,7 @@ declare module PlayFabExperimentationModels { export interface GetTreatmentAssignmentRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; } diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabGroupsApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabGroupsApi.d.ts index cca5d55b..2ef182c1 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabGroupsApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabGroupsApi.d.ts @@ -8,127 +8,127 @@ declare module PlayFabGroupsModule { * Accepts an outstanding invitation to to join a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/acceptgroupapplication */ - AcceptGroupApplication(request: PlayFabGroupsModels.AcceptGroupApplicationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AcceptGroupApplication(request: PlayFabGroupsModels.AcceptGroupApplicationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Accepts an invitation to join a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/acceptgroupinvitation */ - AcceptGroupInvitation(request: PlayFabGroupsModels.AcceptGroupInvitationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AcceptGroupInvitation(request: PlayFabGroupsModels.AcceptGroupInvitationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds members to a group or role. * https://docs.microsoft.com/rest/api/playfab/groups/groups/addmembers */ - AddMembers(request: PlayFabGroupsModels.AddMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddMembers(request: PlayFabGroupsModels.AddMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Applies to join a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/applytogroup */ - ApplyToGroup(request: PlayFabGroupsModels.ApplyToGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ApplyToGroup(request: PlayFabGroupsModels.ApplyToGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Blocks a list of entities from joining a group. * https://docs.microsoft.com/rest/api/playfab/groups/groups/blockentity */ - BlockEntity(request: PlayFabGroupsModels.BlockEntityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + BlockEntity(request: PlayFabGroupsModels.BlockEntityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Changes the role membership of a list of entities from one role to another. * https://docs.microsoft.com/rest/api/playfab/groups/groups/changememberrole */ - ChangeMemberRole(request: PlayFabGroupsModels.ChangeMemberRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ChangeMemberRole(request: PlayFabGroupsModels.ChangeMemberRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a new group. * https://docs.microsoft.com/rest/api/playfab/groups/groups/creategroup */ - CreateGroup(request: PlayFabGroupsModels.CreateGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateGroup(request: PlayFabGroupsModels.CreateGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a new group role. * https://docs.microsoft.com/rest/api/playfab/groups/groups/createrole */ - CreateRole(request: PlayFabGroupsModels.CreateGroupRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateRole(request: PlayFabGroupsModels.CreateGroupRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a group and all roles, invitations, join requests, and blocks associated with it. * https://docs.microsoft.com/rest/api/playfab/groups/groups/deletegroup */ - DeleteGroup(request: PlayFabGroupsModels.DeleteGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteGroup(request: PlayFabGroupsModels.DeleteGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes an existing role in a group. * https://docs.microsoft.com/rest/api/playfab/groups/groups/deleterole */ - DeleteRole(request: PlayFabGroupsModels.DeleteRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteRole(request: PlayFabGroupsModels.DeleteRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets information about a group and its roles * https://docs.microsoft.com/rest/api/playfab/groups/groups/getgroup */ - GetGroup(request: PlayFabGroupsModels.GetGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetGroup(request: PlayFabGroupsModels.GetGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Invites a player to join a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/invitetogroup */ - InviteToGroup(request: PlayFabGroupsModels.InviteToGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + InviteToGroup(request: PlayFabGroupsModels.InviteToGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Checks to see if an entity is a member of a group or role within the group * https://docs.microsoft.com/rest/api/playfab/groups/groups/ismember */ - IsMember(request: PlayFabGroupsModels.IsMemberRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + IsMember(request: PlayFabGroupsModels.IsMemberRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all outstanding requests to join a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/listgroupapplications */ - ListGroupApplications(request: PlayFabGroupsModels.ListGroupApplicationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListGroupApplications(request: PlayFabGroupsModels.ListGroupApplicationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all entities blocked from joining a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/listgroupblocks */ - ListGroupBlocks(request: PlayFabGroupsModels.ListGroupBlocksRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListGroupBlocks(request: PlayFabGroupsModels.ListGroupBlocksRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all outstanding invitations for a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/listgroupinvitations */ - ListGroupInvitations(request: PlayFabGroupsModels.ListGroupInvitationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListGroupInvitations(request: PlayFabGroupsModels.ListGroupInvitationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all members for a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/listgroupmembers */ - ListGroupMembers(request: PlayFabGroupsModels.ListGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListGroupMembers(request: PlayFabGroupsModels.ListGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all groups and roles for an entity * https://docs.microsoft.com/rest/api/playfab/groups/groups/listmembership */ - ListMembership(request: PlayFabGroupsModels.ListMembershipRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListMembership(request: PlayFabGroupsModels.ListMembershipRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all outstanding invitations and group applications for an entity * https://docs.microsoft.com/rest/api/playfab/groups/groups/listmembershipopportunities */ - ListMembershipOpportunities(request: PlayFabGroupsModels.ListMembershipOpportunitiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListMembershipOpportunities(request: PlayFabGroupsModels.ListMembershipOpportunitiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes an application to join a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/removegroupapplication */ - RemoveGroupApplication(request: PlayFabGroupsModels.RemoveGroupApplicationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveGroupApplication(request: PlayFabGroupsModels.RemoveGroupApplicationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes an invitation join a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/removegroupinvitation */ - RemoveGroupInvitation(request: PlayFabGroupsModels.RemoveGroupInvitationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveGroupInvitation(request: PlayFabGroupsModels.RemoveGroupInvitationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes members from a group. * https://docs.microsoft.com/rest/api/playfab/groups/groups/removemembers */ - RemoveMembers(request: PlayFabGroupsModels.RemoveMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveMembers(request: PlayFabGroupsModels.RemoveMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unblocks a list of entities from joining a group * https://docs.microsoft.com/rest/api/playfab/groups/groups/unblockentity */ - UnblockEntity(request: PlayFabGroupsModels.UnblockEntityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnblockEntity(request: PlayFabGroupsModels.UnblockEntityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates non-membership data about a group. * https://docs.microsoft.com/rest/api/playfab/groups/groups/updategroup */ - UpdateGroup(request: PlayFabGroupsModels.UpdateGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateGroup(request: PlayFabGroupsModels.UpdateGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates metadata about a role. * https://docs.microsoft.com/rest/api/playfab/groups/groups/updaterole */ - UpdateRole(request: PlayFabGroupsModels.UpdateGroupRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateRole(request: PlayFabGroupsModels.UpdateGroupRoleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } @@ -138,8 +138,8 @@ declare module PlayFabGroupsModels { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** - * Optional. Type of the entity to accept as. If specified, must be the same entity as the claimant or an entity that is a - * child of the claimant entity. Defaults to the claimant entity. + * Type of the entity to accept as. Must be the same entity as the claimant or an entity that is a child of the claimant + * entity. */ Entity: EntityKey; /** The identifier of the group */ @@ -150,7 +150,7 @@ declare module PlayFabGroupsModels { export interface AcceptGroupInvitationRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The identifier of the group */ Group: EntityKey; @@ -177,7 +177,7 @@ declare module PlayFabGroupsModels { AutoAcceptOutstandingInvite?: boolean; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The identifier of the group */ Group: EntityKey; @@ -227,7 +227,7 @@ declare module PlayFabGroupsModels { export interface CreateGroupRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The name of the group. This is unique at the title level by default. */ GroupName: string; @@ -259,7 +259,7 @@ declare module PlayFabGroupsModels { Group: EntityKey; /** * The ID of the role. This must be unique within the group and cannot be changed. Role IDs must be between 1 and 64 - * characters long. + * characters long and are restricted to a-Z, A-Z, 0-9, '(', ')', '_', '-' and '.'. */ RoleId: string; /** @@ -519,7 +519,7 @@ declare module PlayFabGroupsModels { export interface ListMembershipOpportunitiesRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; } @@ -535,7 +535,7 @@ declare module PlayFabGroupsModels { export interface ListMembershipRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; } @@ -547,6 +547,7 @@ declare module PlayFabGroupsModels { } type OperationTypes = "Created" + | "Updated" | "Deleted" | "None"; @@ -599,9 +600,10 @@ declare module PlayFabGroupsModels { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** - * Optional field used for concurrency control. By specifying the previously returned value of ProfileVersion from the - * GetGroup API, you can ensure that the group data update will only be performed if the group has not been updated by any - * other clients since the version you last loaded. + * Optional field used for concurrency control. By specifying the previously returned ProfileVersion value from the + * GetGroup API, you can ensure that the group data update is performed only if the group has not been updated since you + * last loaded that version. If the same group has been updated, the requested update will not occur and the returned + * SetResult value will be None. */ ExpectedProfileVersion?: number; /** The identifier of the group */ @@ -627,9 +629,10 @@ declare module PlayFabGroupsModels { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** - * Optional field used for concurrency control. By specifying the previously returned value of ProfileVersion from the - * GetGroup API, you can ensure that the group data update will only be performed if the group has not been updated by any - * other clients since the version you last loaded. + * Optional field used for concurrency control. By specifying the previously returned ProfileVersion value from the + * GetGroup API, you can ensure that the group role update is performed only if the group has not been updated since you + * last loaded that version. If the same group has been updated, the requested update will not occur and the returned + * SetResult value will be None. */ ExpectedProfileVersion?: number; /** The identifier of the group */ diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabInsightsApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabInsightsApi.d.ts index b3dedede..c9389833 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabInsightsApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabInsightsApi.d.ts @@ -9,33 +9,33 @@ declare module PlayFabInsightsModule { * performance and data storage retention limits. * https://docs.microsoft.com/rest/api/playfab/insights/analytics/getdetails */ - GetDetails(request: PlayFabInsightsModels.InsightsEmptyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetDetails(request: PlayFabInsightsModels.InsightsEmptyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the range of allowed values for performance and data storage retention values as well as the submeter details * for each performance level. * https://docs.microsoft.com/rest/api/playfab/insights/analytics/getlimits */ - GetLimits(request: PlayFabInsightsModels.InsightsEmptyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLimits(request: PlayFabInsightsModels.InsightsEmptyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the status of a SetPerformance or SetStorageRetention operation. * https://docs.microsoft.com/rest/api/playfab/insights/analytics/getoperationstatus */ - GetOperationStatus(request: PlayFabInsightsModels.InsightsGetOperationStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetOperationStatus(request: PlayFabInsightsModels.InsightsGetOperationStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets a list of pending SetPerformance and/or SetStorageRetention operations for the title. * https://docs.microsoft.com/rest/api/playfab/insights/analytics/getpendingoperations */ - GetPendingOperations(request: PlayFabInsightsModels.InsightsGetPendingOperationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPendingOperations(request: PlayFabInsightsModels.InsightsGetPendingOperationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the Insights performance level value for the title. * https://docs.microsoft.com/rest/api/playfab/insights/analytics/setperformance */ - SetPerformance(request: PlayFabInsightsModels.InsightsSetPerformanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetPerformance(request: PlayFabInsightsModels.InsightsSetPerformanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the Insights data storage retention days value for the title. * https://docs.microsoft.com/rest/api/playfab/insights/analytics/setstorageretention */ - SetStorageRetention(request: PlayFabInsightsModels.InsightsSetStorageRetentionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetStorageRetention(request: PlayFabInsightsModels.InsightsSetStorageRetentionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabLocalizationApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabLocalizationApi.d.ts index 4f46491e..f6dc8f6f 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabLocalizationApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabLocalizationApi.d.ts @@ -8,7 +8,7 @@ declare module PlayFabLocalizationModule { * Retrieves the list of allowed languages, only accessible by title entities * https://docs.microsoft.com/rest/api/playfab/localization/localization/getlanguagelist */ - GetLanguageList(request: PlayFabLocalizationModels.GetLanguageListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLanguageList(request: PlayFabLocalizationModels.GetLanguageListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabMatchmakerApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabMatchmakerApi.d.ts deleted file mode 100644 index 7f388f21..00000000 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabMatchmakerApi.d.ts +++ /dev/null @@ -1,216 +0,0 @@ -/// - -declare module PlayFabMatchmakerModule { - export interface IPlayFabMatchmaker { - ForgetAllCredentials(): void; - - /** - * Validates a user with the PlayFab service - * https://docs.microsoft.com/rest/api/playfab/matchmaker/matchmaking/authuser - */ - AuthUser(request: PlayFabMatchmakerModels.AuthUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Informs the PlayFab game server hosting service that the indicated user has joined the Game Server Instance specified - * https://docs.microsoft.com/rest/api/playfab/matchmaker/matchmaking/playerjoined - */ - PlayerJoined(request: PlayFabMatchmakerModels.PlayerJoinedRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Informs the PlayFab game server hosting service that the indicated user has left the Game Server Instance specified - * https://docs.microsoft.com/rest/api/playfab/matchmaker/matchmaking/playerleft - */ - PlayerLeft(request: PlayFabMatchmakerModels.PlayerLeftRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Instructs the PlayFab game server hosting service to instantiate a new Game Server Instance - * https://docs.microsoft.com/rest/api/playfab/matchmaker/matchmaking/startgame - */ - StartGame(request: PlayFabMatchmakerModels.StartGameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Retrieves the relevant details for a specified user, which the external match-making service can then use to compute - * effective matches - * https://docs.microsoft.com/rest/api/playfab/matchmaker/matchmaking/userinfo - */ - UserInfo(request: PlayFabMatchmakerModels.UserInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - - } -} - -declare module PlayFabMatchmakerModels { - export interface AuthUserRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Session Ticket provided by the client. */ - AuthorizationTicket: string; - - } - - export interface AuthUserResponse extends PlayFabModule.IPlayFabResultCommon { - /** Boolean indicating if the user has been authorized to use the external match-making service. */ - Authorized: boolean; - /** PlayFab unique identifier of the account that has been authorized. */ - PlayFabId?: string; - - } - - export interface ItemInstance { - /** Game specific comment associated with this instance when it was added to the user inventory. */ - Annotation?: string; - /** Array of unique items that were awarded when this catalog item was purchased. */ - BundleContents?: string[]; - /** - * Unique identifier for the parent inventory item, as defined in the catalog, for object which were added from a bundle or - * container. - */ - BundleParent?: string; - /** Catalog version for the inventory item, when this instance was created. */ - CatalogVersion?: string; - /** - * A set of custom key-value pairs on the instance of the inventory item, which is not to be confused with the catalog - * item's custom data. - */ - CustomData?: { [key: string]: string | null }; - /** CatalogItem.DisplayName at the time this item was purchased. */ - DisplayName?: string; - /** Timestamp for when this instance will expire. */ - Expiration?: string; - /** Class name for the inventory item, as defined in the catalog. */ - ItemClass?: string; - /** Unique identifier for the inventory item, as defined in the catalog. */ - ItemId?: string; - /** Unique item identifier for this specific instance of the item. */ - ItemInstanceId?: string; - /** Timestamp for when this instance was purchased. */ - PurchaseDate?: string; - /** Total number of remaining uses, if this is a consumable item. */ - RemainingUses?: number; - /** Currency type for the cost of the catalog item. Not available when granting items. */ - UnitCurrency?: string; - /** Cost of the catalog item in the given currency. Not available when granting items. */ - UnitPrice: number; - /** The number of uses that were added or removed to this item in this call. */ - UsesIncrementedBy?: number; - - } - - export interface PlayerJoinedRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** - * Unique identifier of the Game Server Instance the user is joining. This must be a Game Server Instance started with the - * Matchmaker/StartGame API. - */ - LobbyId: string; - /** PlayFab unique identifier for the player joining. */ - PlayFabId: string; - - } - - export interface PlayerJoinedResponse extends PlayFabModule.IPlayFabResultCommon { - - } - - export interface PlayerLeftRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** - * Unique identifier of the Game Server Instance the user is leaving. This must be a Game Server Instance started with the - * Matchmaker/StartGame API. - */ - LobbyId: string; - /** PlayFab unique identifier for the player leaving. */ - PlayFabId: string; - - } - - export interface PlayerLeftResponse extends PlayFabModule.IPlayFabResultCommon { - - } - - type Region = "USCentral" - | "USEast" - | "EUWest" - | "Singapore" - | "Japan" - | "Brazil" - | "Australia"; - - export interface StartGameRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Unique identifier of the previously uploaded build executable which is to be started. */ - Build: string; - /** Custom command line argument when starting game server process. */ - CustomCommandLineData?: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** - * HTTP endpoint URL for receiving game status events, if using an external matchmaker. When the game ends, PlayFab will - * make a POST request to this URL with the X-SecretKey header set to the value of the game's secret and an - * application/json body of { "EventName": "game_ended", "GameID": "" }. - */ - ExternalMatchmakerEventEndpoint: string; - /** Game mode for this Game Server Instance. */ - GameMode: string; - /** Region with which to associate the server, for filtering. */ - Region: string; - - } - - export interface StartGameResponse extends PlayFabModule.IPlayFabResultCommon { - /** Unique identifier for the game/lobby in the new Game Server Instance. */ - GameID?: string; - /** IPV4 address of the server */ - ServerIPV4Address?: string; - /** IPV6 address of the new Game Server Instance. */ - ServerIPV6Address?: string; - /** Port number for communication with the Game Server Instance. */ - ServerPort: number; - /** Public DNS name (if any) of the server */ - ServerPublicDNSName?: string; - - } - - export interface UserInfoRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** - * Minimum catalog version for which data is requested (filters the results to only contain inventory items which have a - * catalog version of this or higher). - */ - MinCatalogVersion: number; - /** PlayFab unique identifier of the user whose information is being requested. */ - PlayFabId: string; - - } - - export interface UserInfoResponse extends PlayFabModule.IPlayFabResultCommon { - /** Array of inventory items in the user's current inventory. */ - Inventory?: ItemInstance[]; - /** Boolean indicating whether the user is a developer. */ - IsDeveloper: boolean; - /** PlayFab unique identifier of the user whose information was requested. */ - PlayFabId?: string; - /** Steam unique identifier, if the user has an associated Steam account. */ - SteamId?: string; - /** Title specific display name, if set. */ - TitleDisplayName?: string; - /** PlayFab unique user name. */ - Username?: string; - /** Array of virtual currency balance(s) belonging to the user. */ - VirtualCurrency?: { [key: string]: number }; - /** Array of remaining times and timestamps for virtual currencies. */ - VirtualCurrencyRechargeTimes?: { [key: string]: VirtualCurrencyRechargeTime }; - - } - - export interface VirtualCurrencyRechargeTime { - /** - * Maximum value to which the regenerating currency will automatically increment. Note that it can exceed this value - * through use of the AddUserVirtualCurrency API call. However, it will not regenerate automatically until it has fallen - * below this value. - */ - RechargeMax: number; - /** Server timestamp in UTC indicating the next time the virtual currency will be incremented. */ - RechargeTime: string; - /** Time remaining (in seconds) before the next recharge increment of the virtual currency. */ - SecondsToRecharge: number; - - } - - -} diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabMultiplayerApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabMultiplayerApi.d.ts index 81b341d8..d2ff0a24 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabMultiplayerApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabMultiplayerApi.d.ts @@ -8,334 +8,458 @@ declare module PlayFabMultiplayerModule { * Cancel all active tickets the player is a member of in a given queue. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/cancelallmatchmakingticketsforplayer */ - CancelAllMatchmakingTicketsForPlayer(request: PlayFabMultiplayerModels.CancelAllMatchmakingTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CancelAllMatchmakingTicketsForPlayer(request: PlayFabMultiplayerModels.CancelAllMatchmakingTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Cancel all active backfill tickets the player is a member of in a given queue. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/cancelallserverbackfillticketsforplayer */ - CancelAllServerBackfillTicketsForPlayer(request: PlayFabMultiplayerModels.CancelAllServerBackfillTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CancelAllServerBackfillTicketsForPlayer(request: PlayFabMultiplayerModels.CancelAllServerBackfillTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Cancel a matchmaking ticket. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/cancelmatchmakingticket */ - CancelMatchmakingTicket(request: PlayFabMultiplayerModels.CancelMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CancelMatchmakingTicket(request: PlayFabMultiplayerModels.CancelMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Cancel a server backfill ticket. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/cancelserverbackfillticket */ - CancelServerBackfillTicket(request: PlayFabMultiplayerModels.CancelServerBackfillTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CancelServerBackfillTicket(request: PlayFabMultiplayerModels.CancelServerBackfillTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a multiplayer server build alias. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/createbuildalias */ - CreateBuildAlias(request: PlayFabMultiplayerModels.CreateBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateBuildAlias(request: PlayFabMultiplayerModels.CreateBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a multiplayer server build with a custom container. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/createbuildwithcustomcontainer */ - CreateBuildWithCustomContainer(request: PlayFabMultiplayerModels.CreateBuildWithCustomContainerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateBuildWithCustomContainer(request: PlayFabMultiplayerModels.CreateBuildWithCustomContainerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a multiplayer server build with a managed container. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/createbuildwithmanagedcontainer */ - CreateBuildWithManagedContainer(request: PlayFabMultiplayerModels.CreateBuildWithManagedContainerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateBuildWithManagedContainer(request: PlayFabMultiplayerModels.CreateBuildWithManagedContainerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a multiplayer server build with the server running as a process. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/createbuildwithprocessbasedserver */ - CreateBuildWithProcessBasedServer(request: PlayFabMultiplayerModels.CreateBuildWithProcessBasedServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateBuildWithProcessBasedServer(request: PlayFabMultiplayerModels.CreateBuildWithProcessBasedServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Create a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/createlobby + */ + CreateLobby(request: PlayFabMultiplayerModels.CreateLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Create a matchmaking ticket as a client. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/creatematchmakingticket */ - CreateMatchmakingTicket(request: PlayFabMultiplayerModels.CreateMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateMatchmakingTicket(request: PlayFabMultiplayerModels.CreateMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a remote user to log on to a VM for a multiplayer server build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/createremoteuser */ - CreateRemoteUser(request: PlayFabMultiplayerModels.CreateRemoteUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateRemoteUser(request: PlayFabMultiplayerModels.CreateRemoteUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Create a backfill matchmaking ticket as a server. A backfill ticket represents an ongoing game. The matchmaking service * automatically starts matching the backfill ticket against other matchmaking tickets. Backfill tickets cannot match with * other backfill tickets. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/createserverbackfillticket */ - CreateServerBackfillTicket(request: PlayFabMultiplayerModels.CreateServerBackfillTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateServerBackfillTicket(request: PlayFabMultiplayerModels.CreateServerBackfillTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Create a matchmaking ticket as a server. The matchmaking service automatically starts matching the ticket against other * matchmaking tickets. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/createservermatchmakingticket */ - CreateServerMatchmakingTicket(request: PlayFabMultiplayerModels.CreateServerMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateServerMatchmakingTicket(request: PlayFabMultiplayerModels.CreateServerMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a request to change a title's multiplayer server quotas. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/createtitlemultiplayerserversquotachange */ - CreateTitleMultiplayerServersQuotaChange(request: PlayFabMultiplayerModels.CreateTitleMultiplayerServersQuotaChangeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateTitleMultiplayerServersQuotaChange(request: PlayFabMultiplayerModels.CreateTitleMultiplayerServersQuotaChangeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a multiplayer server game asset for a title. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deleteasset */ - DeleteAsset(request: PlayFabMultiplayerModels.DeleteAssetRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteAsset(request: PlayFabMultiplayerModels.DeleteAssetRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a multiplayer server build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deletebuild */ - DeleteBuild(request: PlayFabMultiplayerModels.DeleteBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteBuild(request: PlayFabMultiplayerModels.DeleteBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a multiplayer server build alias. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deletebuildalias */ - DeleteBuildAlias(request: PlayFabMultiplayerModels.DeleteBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteBuildAlias(request: PlayFabMultiplayerModels.DeleteBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes a multiplayer server build's region. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deletebuildregion */ - DeleteBuildRegion(request: PlayFabMultiplayerModels.DeleteBuildRegionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteBuildRegion(request: PlayFabMultiplayerModels.DeleteBuildRegionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a multiplayer server game certificate. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deletecertificate */ - DeleteCertificate(request: PlayFabMultiplayerModels.DeleteCertificateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteCertificate(request: PlayFabMultiplayerModels.DeleteCertificateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a container image repository. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deletecontainerimagerepository */ - DeleteContainerImageRepository(request: PlayFabMultiplayerModels.DeleteContainerImageRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteContainerImageRepository(request: PlayFabMultiplayerModels.DeleteContainerImageRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Delete a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/deletelobby + */ + DeleteLobby(request: PlayFabMultiplayerModels.DeleteLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a remote user to log on to a VM for a multiplayer server build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deleteremoteuser */ - DeleteRemoteUser(request: PlayFabMultiplayerModels.DeleteRemoteUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteRemoteUser(request: PlayFabMultiplayerModels.DeleteRemoteUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes a multiplayer server game secret. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deletesecret + */ + DeleteSecret(request: PlayFabMultiplayerModels.DeleteSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Enables the multiplayer server feature for a title. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/enablemultiplayerserversfortitle */ - EnableMultiplayerServersForTitle(request: PlayFabMultiplayerModels.EnableMultiplayerServersForTitleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + EnableMultiplayerServersForTitle(request: PlayFabMultiplayerModels.EnableMultiplayerServersForTitleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Find lobbies which match certain criteria, and which friends are in. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/findfriendlobbies + */ + FindFriendLobbies(request: PlayFabMultiplayerModels.FindFriendLobbiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Gets the URL to upload assets to. + * Find all the lobbies that match certain criteria. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/findlobbies + */ + FindLobbies(request: PlayFabMultiplayerModels.FindLobbiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets a URL that can be used to download the specified asset. A sample pre-authenticated url - + * https://sampleStorageAccount.blob.core.windows.net/gameassets/gameserver.zip?sv=2015-04-05&ss=b&srt=sco&sp=rw&st=startDate&se=endDate&spr=https&sig=sampleSig&api-version=2017-07-29 + * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getassetdownloadurl + */ + GetAssetDownloadUrl(request: PlayFabMultiplayerModels.GetAssetDownloadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets the URL to upload assets to. A sample pre-authenticated url - + * https://sampleStorageAccount.blob.core.windows.net/gameassets/gameserver.zip?sv=2015-04-05&ss=b&srt=sco&sp=rw&st=startDate&se=endDate&spr=https&sig=sampleSig&api-version=2017-07-29 * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getassetuploadurl */ - GetAssetUploadUrl(request: PlayFabMultiplayerModels.GetAssetUploadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetAssetUploadUrl(request: PlayFabMultiplayerModels.GetAssetUploadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets a multiplayer server build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getbuild */ - GetBuild(request: PlayFabMultiplayerModels.GetBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetBuild(request: PlayFabMultiplayerModels.GetBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets a multiplayer server build alias. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getbuildalias */ - GetBuildAlias(request: PlayFabMultiplayerModels.GetBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetBuildAlias(request: PlayFabMultiplayerModels.GetBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the credentials to the container registry. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getcontainerregistrycredentials */ - GetContainerRegistryCredentials(request: PlayFabMultiplayerModels.GetContainerRegistryCredentialsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetContainerRegistryCredentials(request: PlayFabMultiplayerModels.GetContainerRegistryCredentialsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/getlobby + */ + GetLobby(request: PlayFabMultiplayerModels.GetLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get a match. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/getmatch */ - GetMatch(request: PlayFabMultiplayerModels.GetMatchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetMatch(request: PlayFabMultiplayerModels.GetMatchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * SDK support is limited to C# and Java for this API. Get a matchmaking queue configuration. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking-admin/getmatchmakingqueue */ - GetMatchmakingQueue(request: PlayFabMultiplayerModels.GetMatchmakingQueueRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetMatchmakingQueue(request: PlayFabMultiplayerModels.GetMatchmakingQueueRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get a matchmaking ticket by ticket Id. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/getmatchmakingticket */ - GetMatchmakingTicket(request: PlayFabMultiplayerModels.GetMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetMatchmakingTicket(request: PlayFabMultiplayerModels.GetMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets multiplayer server session details for a build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getmultiplayerserverdetails */ - GetMultiplayerServerDetails(request: PlayFabMultiplayerModels.GetMultiplayerServerDetailsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetMultiplayerServerDetails(request: PlayFabMultiplayerModels.GetMultiplayerServerDetailsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets multiplayer server logs after a server has terminated. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getmultiplayerserverlogs */ - GetMultiplayerServerLogs(request: PlayFabMultiplayerModels.GetMultiplayerServerLogsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetMultiplayerServerLogs(request: PlayFabMultiplayerModels.GetMultiplayerServerLogsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets multiplayer server logs after a server has terminated. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getmultiplayersessionlogsbysessionid */ - GetMultiplayerSessionLogsBySessionId(request: PlayFabMultiplayerModels.GetMultiplayerSessionLogsBySessionIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetMultiplayerSessionLogsBySessionId(request: PlayFabMultiplayerModels.GetMultiplayerSessionLogsBySessionIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get the statistics for a queue. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/getqueuestatistics */ - GetQueueStatistics(request: PlayFabMultiplayerModels.GetQueueStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetQueueStatistics(request: PlayFabMultiplayerModels.GetQueueStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets a remote login endpoint to a VM that is hosting a multiplayer server build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/getremoteloginendpoint */ - GetRemoteLoginEndpoint(request: PlayFabMultiplayerModels.GetRemoteLoginEndpointRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetRemoteLoginEndpoint(request: PlayFabMultiplayerModels.GetRemoteLoginEndpointRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get a matchmaking backfill ticket by ticket Id. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/getserverbackfillticket */ - GetServerBackfillTicket(request: PlayFabMultiplayerModels.GetServerBackfillTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetServerBackfillTicket(request: PlayFabMultiplayerModels.GetServerBackfillTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the status of whether a title is enabled for the multiplayer server feature. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/gettitleenabledformultiplayerserversstatus */ - GetTitleEnabledForMultiplayerServersStatus(request: PlayFabMultiplayerModels.GetTitleEnabledForMultiplayerServersStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleEnabledForMultiplayerServersStatus(request: PlayFabMultiplayerModels.GetTitleEnabledForMultiplayerServersStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets a title's server quota change request. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/gettitlemultiplayerserversquotachange */ - GetTitleMultiplayerServersQuotaChange(request: PlayFabMultiplayerModels.GetTitleMultiplayerServersQuotaChangeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleMultiplayerServersQuotaChange(request: PlayFabMultiplayerModels.GetTitleMultiplayerServersQuotaChangeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the quotas for a title in relation to multiplayer servers. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/gettitlemultiplayerserversquotas */ - GetTitleMultiplayerServersQuotas(request: PlayFabMultiplayerModels.GetTitleMultiplayerServersQuotasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleMultiplayerServersQuotas(request: PlayFabMultiplayerModels.GetTitleMultiplayerServersQuotasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Send a notification to invite a player to a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/invitetolobby + */ + InviteToLobby(request: PlayFabMultiplayerModels.InviteToLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Join an Arranged lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/joinarrangedlobby + */ + JoinArrangedLobby(request: PlayFabMultiplayerModels.JoinArrangedLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Join a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/joinlobby + */ + JoinLobby(request: PlayFabMultiplayerModels.JoinLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Preview: Join a lobby as a server entity. This is restricted to client lobbies which are using connections. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/joinlobbyasserver + */ + JoinLobbyAsServer(request: PlayFabMultiplayerModels.JoinLobbyAsServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Join a matchmaking ticket. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/joinmatchmakingticket */ - JoinMatchmakingTicket(request: PlayFabMultiplayerModels.JoinMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + JoinMatchmakingTicket(request: PlayFabMultiplayerModels.JoinMatchmakingTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Leave a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/leavelobby + */ + LeaveLobby(request: PlayFabMultiplayerModels.LeaveLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Preview: Request for server to leave a lobby. This is restricted to client owned lobbies which are using connections. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/leavelobbyasserver + */ + LeaveLobbyAsServer(request: PlayFabMultiplayerModels.LeaveLobbyAsServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists archived multiplayer server sessions for a build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listarchivedmultiplayerservers */ - ListArchivedMultiplayerServers(request: PlayFabMultiplayerModels.ListMultiplayerServersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListArchivedMultiplayerServers(request: PlayFabMultiplayerModels.ListMultiplayerServersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists multiplayer server game assets for a title. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listassetsummaries */ - ListAssetSummaries(request: PlayFabMultiplayerModels.ListAssetSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListAssetSummaries(request: PlayFabMultiplayerModels.ListAssetSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists details of all build aliases for a title. Accepts tokens for title and if game client access is enabled, allows * game client to request list of builds with player entity token. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listbuildaliases */ - ListBuildAliases(request: PlayFabMultiplayerModels.ListBuildAliasesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListBuildAliases(request: PlayFabMultiplayerModels.ListBuildAliasesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists summarized details of all multiplayer server builds for a title. Accepts tokens for title and if game client * access is enabled, allows game client to request list of builds with player entity token. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listbuildsummariesv2 */ - ListBuildSummariesV2(request: PlayFabMultiplayerModels.ListBuildSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListBuildSummariesV2(request: PlayFabMultiplayerModels.ListBuildSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists multiplayer server game certificates for a title. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listcertificatesummaries */ - ListCertificateSummaries(request: PlayFabMultiplayerModels.ListCertificateSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListCertificateSummaries(request: PlayFabMultiplayerModels.ListCertificateSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists custom container images for a title. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listcontainerimages */ - ListContainerImages(request: PlayFabMultiplayerModels.ListContainerImagesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListContainerImages(request: PlayFabMultiplayerModels.ListContainerImagesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists the tags for a custom container image. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listcontainerimagetags */ - ListContainerImageTags(request: PlayFabMultiplayerModels.ListContainerImageTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListContainerImageTags(request: PlayFabMultiplayerModels.ListContainerImageTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * SDK support is limited to C# and Java for this API. List all matchmaking queue configs. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking-admin/listmatchmakingqueues */ - ListMatchmakingQueues(request: PlayFabMultiplayerModels.ListMatchmakingQueuesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListMatchmakingQueues(request: PlayFabMultiplayerModels.ListMatchmakingQueuesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * List all matchmaking ticket Ids the user is a member of. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/listmatchmakingticketsforplayer */ - ListMatchmakingTicketsForPlayer(request: PlayFabMultiplayerModels.ListMatchmakingTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListMatchmakingTicketsForPlayer(request: PlayFabMultiplayerModels.ListMatchmakingTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists multiplayer server sessions for a build. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listmultiplayerservers */ - ListMultiplayerServers(request: PlayFabMultiplayerModels.ListMultiplayerServersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListMultiplayerServers(request: PlayFabMultiplayerModels.ListMultiplayerServersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists quality of service servers for party. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listpartyqosservers */ - ListPartyQosServers(request: PlayFabMultiplayerModels.ListPartyQosServersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListPartyQosServers(request: PlayFabMultiplayerModels.ListPartyQosServersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists quality of service servers for the title. By default, servers are only returned for regions where a Multiplayer * Servers build has been deployed. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listqosserversfortitle */ - ListQosServersForTitle(request: PlayFabMultiplayerModels.ListQosServersForTitleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListQosServersForTitle(request: PlayFabMultiplayerModels.ListQosServersForTitleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Lists multiplayer server game secrets for a title. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listsecretsummaries + */ + ListSecretSummaries(request: PlayFabMultiplayerModels.ListSecretSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * List all server backfill ticket Ids the user is a member of. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/listserverbackfillticketsforplayer */ - ListServerBackfillTicketsForPlayer(request: PlayFabMultiplayerModels.ListServerBackfillTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListServerBackfillTicketsForPlayer(request: PlayFabMultiplayerModels.ListServerBackfillTicketsForPlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * List all server quota change requests for a title. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listtitlemultiplayerserversquotachanges */ - ListTitleMultiplayerServersQuotaChanges(request: PlayFabMultiplayerModels.ListTitleMultiplayerServersQuotaChangesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListTitleMultiplayerServersQuotaChanges(request: PlayFabMultiplayerModels.ListTitleMultiplayerServersQuotaChangesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists virtual machines for a title. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listvirtualmachinesummaries */ - ListVirtualMachineSummaries(request: PlayFabMultiplayerModels.ListVirtualMachineSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ListVirtualMachineSummaries(request: PlayFabMultiplayerModels.ListVirtualMachineSummariesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * SDK support is limited to C# and Java for this API. Remove a matchmaking queue config. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking-admin/removematchmakingqueue */ - RemoveMatchmakingQueue(request: PlayFabMultiplayerModels.RemoveMatchmakingQueueRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveMatchmakingQueue(request: PlayFabMultiplayerModels.RemoveMatchmakingQueueRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Remove a member from a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/removemember + */ + RemoveMember(request: PlayFabMultiplayerModels.RemoveMemberFromLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Request a multiplayer server session. Accepts tokens for title and if game client access is enabled, allows game client * to request a server with player entity token. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/requestmultiplayerserver */ - RequestMultiplayerServer(request: PlayFabMultiplayerModels.RequestMultiplayerServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RequestMultiplayerServer(request: PlayFabMultiplayerModels.RequestMultiplayerServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Request a party session. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/requestpartyservice + */ + RequestPartyService(request: PlayFabMultiplayerModels.RequestPartyServiceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Rolls over the credentials to the container registry. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/rollovercontainerregistrycredentials */ - RolloverContainerRegistryCredentials(request: PlayFabMultiplayerModels.RolloverContainerRegistryCredentialsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RolloverContainerRegistryCredentials(request: PlayFabMultiplayerModels.RolloverContainerRegistryCredentialsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * SDK support is limited to C# and Java for this API. Create or update a matchmaking queue configuration. * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking-admin/setmatchmakingqueue */ - SetMatchmakingQueue(request: PlayFabMultiplayerModels.SetMatchmakingQueueRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetMatchmakingQueue(request: PlayFabMultiplayerModels.SetMatchmakingQueueRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Shuts down a multiplayer server session. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/shutdownmultiplayerserver */ - ShutdownMultiplayerServer(request: PlayFabMultiplayerModels.ShutdownMultiplayerServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ShutdownMultiplayerServer(request: PlayFabMultiplayerModels.ShutdownMultiplayerServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Subscribe to lobby resource notifications. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/subscribetolobbyresource + */ + SubscribeToLobbyResource(request: PlayFabMultiplayerModels.SubscribeToLobbyResourceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Subscribe to match resource notifications. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/subscribetomatchmakingresource + */ + SubscribeToMatchmakingResource(request: PlayFabMultiplayerModels.SubscribeToMatchResourceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unsubscribe from lobby notifications. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/unsubscribefromlobbyresource + */ + UnsubscribeFromLobbyResource(request: PlayFabMultiplayerModels.UnsubscribeFromLobbyResourceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unsubscribe from match resource notifications. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/matchmaking/unsubscribefrommatchmakingresource + */ + UnsubscribeFromMatchmakingResource(request: PlayFabMultiplayerModels.UnsubscribeFromMatchResourceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Untags a container image. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/untagcontainerimage */ - UntagContainerImage(request: PlayFabMultiplayerModels.UntagContainerImageRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UntagContainerImage(request: PlayFabMultiplayerModels.UntagContainerImageRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Creates a multiplayer server build alias. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/updatebuildalias */ - UpdateBuildAlias(request: PlayFabMultiplayerModels.UpdateBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateBuildAlias(request: PlayFabMultiplayerModels.UpdateBuildAliasRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates a multiplayer server build's name. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/updatebuildname */ - UpdateBuildName(request: PlayFabMultiplayerModels.UpdateBuildNameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateBuildName(request: PlayFabMultiplayerModels.UpdateBuildNameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates a multiplayer server build's region. If the region is not yet created, it will be created * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/updatebuildregion */ - UpdateBuildRegion(request: PlayFabMultiplayerModels.UpdateBuildRegionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateBuildRegion(request: PlayFabMultiplayerModels.UpdateBuildRegionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates a multiplayer server build's regions. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/updatebuildregions */ - UpdateBuildRegions(request: PlayFabMultiplayerModels.UpdateBuildRegionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateBuildRegions(request: PlayFabMultiplayerModels.UpdateBuildRegionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Update a lobby. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/updatelobby + */ + UpdateLobby(request: PlayFabMultiplayerModels.UpdateLobbyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Preview: Update fields related to a joined server in the lobby the server is in. Servers can keep a lobby from expiring + * by being the one to "update" the lobby in some way. Servers have no impact on last member leave/last member disconnect + * behavior. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/lobby/updatelobbyasserver + */ + UpdateLobbyAsServer(request: PlayFabMultiplayerModels.UpdateLobbyAsServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Uploads a multiplayer server game certificate. * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/uploadcertificate */ - UploadCertificate(request: PlayFabMultiplayerModels.UploadCertificateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UploadCertificate(request: PlayFabMultiplayerModels.UploadCertificateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Uploads a multiplayer server game secret. + * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/uploadsecret + */ + UploadSecret(request: PlayFabMultiplayerModels.UploadSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } declare module PlayFabMultiplayerModels { + type AccessPolicy = "Public" + + | "Friends" + | "Private"; + export interface AssetReference { /** The asset's file name. This is a filename with the .zip, .tar, or .tar.gz extension. */ FileName?: string; @@ -361,16 +485,20 @@ declare module PlayFabMultiplayerModels { } type AttributeMergeFunction = "Min" + | "Max" | "Average"; type AttributeNotSpecifiedBehavior = "UseDefault" + | "MatchAny"; type AttributeSource = "User" + | "PlayerEntity"; type AzureRegion = "AustraliaEast" + | "AustraliaSoutheast" | "BrazilSouth" | "CentralUs" @@ -392,9 +520,14 @@ declare module PlayFabMultiplayerModels { | "WestUs2" | "CentralIndia" | "UaeNorth" - | "UkSouth"; + | "UkSouth" + | "SwedenCentral" + | "CanadaCentral" + | "MexicoCentral" + | "WestUs3"; type AzureVmFamily = "A" + | "Av2" | "Dv2" | "Dv3" @@ -402,15 +535,31 @@ declare module PlayFabMultiplayerModels { | "Fsv2" | "Dasv4" | "Dav4" + | "Dadsv5" + | "Dadsv6" | "Eav4" | "Easv4" | "Ev4" | "Esv4" | "Dsv3" | "Dsv2" - | "NCasT4_v3"; + | "NCasT4_v3" + | "Ddv4" + | "Ddsv4" + | "HBv3" + | "Ddv5" + | "Ddsv5" + | "Ddsv6" + | "Fasv6" + | "Fasv7" + | "Fadsv7" + | "Eadsv5" + | "Eadsv6" + | "Eadsv7" + | "Dadsv7"; type AzureVmSize = "Standard_A1" + | "Standard_A2" | "Standard_A3" | "Standard_A4" @@ -436,6 +585,18 @@ declare module PlayFabMultiplayerModels { | "Standard_F4s_v2" | "Standard_F8s_v2" | "Standard_F16s_v2" + | "Standard_F2as_v6" + | "Standard_F4as_v6" + | "Standard_F8as_v6" + | "Standard_F16as_v6" + | "Standard_F2as_v7" + | "Standard_F4as_v7" + | "Standard_F8as_v7" + | "Standard_F16as_v7" + | "Standard_F2ads_v7" + | "Standard_F4ads_v7" + | "Standard_F8ads_v7" + | "Standard_F16ads_v7" | "Standard_D2as_v4" | "Standard_D4as_v4" | "Standard_D8as_v4" @@ -444,6 +605,18 @@ declare module PlayFabMultiplayerModels { | "Standard_D4a_v4" | "Standard_D8a_v4" | "Standard_D16a_v4" + | "Standard_D2ads_v5" + | "Standard_D4ads_v5" + | "Standard_D8ads_v5" + | "Standard_D16ads_v5" + | "Standard_D2ads_v6" + | "Standard_D4ads_v6" + | "Standard_D8ads_v6" + | "Standard_D16ads_v6" + | "Standard_D2ads_v7" + | "Standard_D4ads_v7" + | "Standard_D8ads_v7" + | "Standard_D16ads_v7" | "Standard_E2a_v4" | "Standard_E4a_v4" | "Standard_E8a_v4" @@ -452,6 +625,18 @@ declare module PlayFabMultiplayerModels { | "Standard_E4as_v4" | "Standard_E8as_v4" | "Standard_E16as_v4" + | "Standard_E2ads_v5" + | "Standard_E4ads_v5" + | "Standard_E8ads_v5" + | "Standard_E16ads_v5" + | "Standard_E2ads_v6" + | "Standard_E4ads_v6" + | "Standard_E8ads_v6" + | "Standard_E16ads_v6" + | "Standard_E2ads_v7" + | "Standard_E4ads_v7" + | "Standard_E8ads_v7" + | "Standard_E16ads_v7" | "Standard_D2s_v3" | "Standard_D4s_v3" | "Standard_D8s_v3" @@ -461,7 +646,34 @@ declare module PlayFabMultiplayerModels { | "Standard_DS3_v2" | "Standard_DS4_v2" | "Standard_DS5_v2" - | "Standard_NC4as_T4_v3"; + | "Standard_NC4as_T4_v3" + | "Standard_D2d_v4" + | "Standard_D4d_v4" + | "Standard_D8d_v4" + | "Standard_D16d_v4" + | "Standard_D2ds_v4" + | "Standard_D4ds_v4" + | "Standard_D8ds_v4" + | "Standard_D16ds_v4" + | "Standard_HB120_16rs_v3" + | "Standard_HB120_32rs_v3" + | "Standard_HB120_64rs_v3" + | "Standard_HB120_96rs_v3" + | "Standard_HB120rs_v3" + | "Standard_D2d_v5" + | "Standard_D4d_v5" + | "Standard_D8d_v5" + | "Standard_D16d_v5" + | "Standard_D32d_v5" + | "Standard_D2ds_v5" + | "Standard_D4ds_v5" + | "Standard_D8ds_v5" + | "Standard_D16ds_v5" + | "Standard_D32ds_v5" + | "Standard_D2ds_v6" + | "Standard_D4ds_v6" + | "Standard_D8ds_v6" + | "Standard_D16ds_v6"; export interface BuildAliasDetailsResponse extends PlayFabModule.IPlayFabResultCommon { /** The guid string alias Id of the alias to be created or updated. */ @@ -484,8 +696,12 @@ declare module PlayFabMultiplayerModels { CurrentServerStats?: CurrentServerStats; /** Optional settings to control dynamic adjustment of standby target */ DynamicStandbySettings?: DynamicStandbySettings; + /** Whether the game assets provided for the build have been replicated to this region. */ + IsAssetReplicationComplete: boolean; /** The maximum number of multiplayer servers for the region. */ MaxServers: number; + /** Regional override for the number of multiplayer servers to host on a single VM of the build. */ + MultiplayerServerCountPerVm?: number; /** The build region. */ Region?: string; /** Optional settings to set the standby target to specified values during the supplied schedules */ @@ -497,6 +713,8 @@ declare module PlayFabMultiplayerModels { * Unhealthy, Deleting, Deleted. */ Status?: string; + /** Regional override for the VM size the build was created on. */ + VmSize?: string; } @@ -505,12 +723,16 @@ declare module PlayFabMultiplayerModels { DynamicStandbySettings?: DynamicStandbySettings; /** The maximum number of multiplayer servers for the region. */ MaxServers: number; + /** Regional override for the number of multiplayer servers to host on a single VM of the build. */ + MultiplayerServerCountPerVm?: number; /** The build region. */ Region: string; /** Optional settings to set the standby target to specified values during the supplied schedules */ ScheduledStandbySettings?: ScheduledStandbySettings; /** The number of standby multiplayer servers for the region. */ StandbyServers: number; + /** Regional override for the VM size the build was created on. */ + VmSize?: string; } @@ -537,7 +759,7 @@ declare module PlayFabMultiplayerModels { export interface CancelAllMatchmakingTicketsForPlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity key of the player whose tickets should be canceled. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The name of the queue from which a player's tickets should be canceled. */ QueueName: string; @@ -551,7 +773,7 @@ declare module PlayFabMultiplayerModels { export interface CancelAllServerBackfillTicketsForPlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity key of the player whose backfill tickets should be canceled. */ + /** The entity to perform this action on. */ Entity: EntityKey; /** The name of the queue from which a player's backfill tickets should be canceled. */ QueueName: string; @@ -563,6 +785,7 @@ declare module PlayFabMultiplayerModels { } type CancellationReason = "Requested" + | "Internal" | "Timeout"; @@ -622,6 +845,7 @@ declare module PlayFabMultiplayerModels { } type ContainerFlavor = "ManagedWindowsServerCore" + | "CustomLinux" | "ManagedWindowsServerCorePreview" | "Invalid"; @@ -686,6 +910,8 @@ declare module PlayFabMultiplayerModels { GameAssetReferences?: AssetReferenceParams[]; /** The game certificates for the build. */ GameCertificateReferences?: GameCertificateReferenceParams[]; + /** The game secrets for the build. */ + GameSecretReferences?: GameSecretReferenceParams[]; /** The Linux instrumentation configuration for the build. */ LinuxInstrumentationConfiguration?: LinuxInstrumentationConfiguration; /** @@ -693,19 +919,20 @@ declare module PlayFabMultiplayerModels { * Game Server SDK (GSDK).Constraints: Maximum number of keys: 30, Maximum key length: 50, Maximum value length: 100 */ Metadata?: { [key: string]: string | null }; + /** The configuration for the monitoring application on the build */ + MonitoringApplicationConfiguration?: MonitoringApplicationConfigurationParams; /** The number of multiplayer servers to host on a single VM. */ MultiplayerServerCountPerVm: number; /** The ports to map the build on. */ Ports: Port[]; /** The region configurations for the build. */ RegionConfigurations: BuildRegionParams[]; - /** - * When true, assets will be downloaded and uncompressed in memory, without the compressedversion being written first to - * disc. - */ - UseStreamingForAssetDownloads?: boolean; + /** The resource constraints to apply to each server on the VM (EXPERIMENTAL API) */ + ServerResourceConstraints?: ServerResourceConstraintParams; /** The VM size to create the build on. */ VmSize?: string; + /** The configuration for the VmStartupScript for the build */ + VmStartupScriptConfiguration?: VmStartupScriptParams; } @@ -731,10 +958,14 @@ declare module PlayFabMultiplayerModels { GameAssetReferences?: AssetReference[]; /** The game certificates for the build. */ GameCertificateReferences?: GameCertificateReference[]; + /** The game secrets for the build. */ + GameSecretReferences?: GameSecretReference[]; /** The Linux instrumentation configuration for this build. */ LinuxInstrumentationConfiguration?: LinuxInstrumentationConfiguration; /** The metadata of the build. */ Metadata?: { [key: string]: string | null }; + /** The configuration for the monitoring application for the build */ + MonitoringApplicationConfiguration?: MonitoringApplicationConfiguration; /** The number of multiplayer servers to host on a single VM of the build. */ MultiplayerServerCountPerVm: number; /** The OS platform used for running the game process. */ @@ -743,6 +974,8 @@ declare module PlayFabMultiplayerModels { Ports?: Port[]; /** The region configuration for the build. */ RegionConfigurations?: BuildRegion[]; + /** The resource constraints to apply to each server on the VM (EXPERIMENTAL API) */ + ServerResourceConstraints?: ServerResourceConstraintParams; /** The type of game server being hosted. */ ServerType?: string; /** @@ -752,6 +985,8 @@ declare module PlayFabMultiplayerModels { UseStreamingForAssetDownloads?: boolean; /** The VM size the build was created on. */ VmSize?: string; + /** The configuration for the VmStartupScript feature for the build */ + VmStartupScriptConfiguration?: VmStartupScriptConfiguration; } @@ -771,6 +1006,8 @@ declare module PlayFabMultiplayerModels { GameAssetReferences: AssetReferenceParams[]; /** The game certificates for the build. */ GameCertificateReferences?: GameCertificateReferenceParams[]; + /** The game secrets for the build. */ + GameSecretReferences?: GameSecretReferenceParams[]; /** * The directory containing the game executable. This would be the start path of the game assets that contain the main game * server executable. If not provided, a best effort will be made to extract it from the start game command. @@ -783,21 +1020,24 @@ declare module PlayFabMultiplayerModels { * Game Server SDK (GSDK).Constraints: Maximum number of keys: 30, Maximum key length: 50, Maximum value length: 100 */ Metadata?: { [key: string]: string | null }; + /** The configuration for the monitoring application on the build */ + MonitoringApplicationConfiguration?: MonitoringApplicationConfigurationParams; /** The number of multiplayer servers to host on a single VM. */ MultiplayerServerCountPerVm: number; /** The ports to map the build on. */ Ports: Port[]; /** The region configurations for the build. */ RegionConfigurations: BuildRegionParams[]; + /** The resource constraints to apply to each server on the VM (EXPERIMENTAL API) */ + ServerResourceConstraints?: ServerResourceConstraintParams; /** The command to run when the multiplayer server is started, including any arguments. */ StartMultiplayerServerCommand: string; - /** - * When true, assets will be downloaded and uncompressed in memory, without the compressedversion being written first to - * disc. - */ - UseStreamingForAssetDownloads?: boolean; /** The VM size to create the build on. */ VmSize?: string; + /** The configuration for the VmStartupScript for the build */ + VmStartupScriptConfiguration?: VmStartupScriptParams; + /** The crash dump configuration for the build. */ + WindowsCrashDumpConfiguration?: WindowsCrashDumpConfiguration; } @@ -819,6 +1059,8 @@ declare module PlayFabMultiplayerModels { GameAssetReferences?: AssetReference[]; /** The game certificates for the build. */ GameCertificateReferences?: GameCertificateReference[]; + /** The game secrets for the build. */ + GameSecretReferences?: GameSecretReference[]; /** * The directory containing the game executable. This would be the start path of the game assets that contain the main game * server executable. If not provided, a best effort will be made to extract it from the start game command. @@ -828,6 +1070,8 @@ declare module PlayFabMultiplayerModels { InstrumentationConfiguration?: InstrumentationConfiguration; /** The metadata of the build. */ Metadata?: { [key: string]: string | null }; + /** The configuration for the monitoring application for the build */ + MonitoringApplicationConfiguration?: MonitoringApplicationConfiguration; /** The number of multiplayer servers to host on a single VM of the build. */ MultiplayerServerCountPerVm: number; /** The OS platform used for running the game process. */ @@ -836,6 +1080,8 @@ declare module PlayFabMultiplayerModels { Ports?: Port[]; /** The region configuration for the build. */ RegionConfigurations?: BuildRegion[]; + /** The resource constraints to apply to each server on the VM (EXPERIMENTAL API) */ + ServerResourceConstraints?: ServerResourceConstraintParams; /** The type of game server being hosted. */ ServerType?: string; /** The command to run when the multiplayer server has been allocated, including any arguments. */ @@ -847,6 +1093,8 @@ declare module PlayFabMultiplayerModels { UseStreamingForAssetDownloads?: boolean; /** The VM size the build was created on. */ VmSize?: string; + /** The configuration for the VmStartupScript feature for the build */ + VmStartupScriptConfiguration?: VmStartupScriptConfiguration; } @@ -864,23 +1112,29 @@ declare module PlayFabMultiplayerModels { GameAssetReferences: AssetReferenceParams[]; /** The game certificates for the build. */ GameCertificateReferences?: GameCertificateReferenceParams[]; + /** The game secrets for the build. */ + GameSecretReferences?: GameSecretReferenceParams[]; /** * The working directory for the game process. If this is not provided, the working directory will be set based on the * mount path of the game server executable. */ GameWorkingDirectory?: string; - /** The instrumentation configuration for the build. */ + /** The instrumentation configuration for the Build. Used only if it is a Windows Build. */ InstrumentationConfiguration?: InstrumentationConfiguration; /** * Indicates whether this build will be created using the OS Preview versionPreview OS is recommended for dev builds to * detect any breaking changes before they are released to retail. Retail builds should set this value to false. */ IsOSPreview?: boolean; + /** The Linux instrumentation configuration for the Build. Used only if it is a Linux Build. */ + LinuxInstrumentationConfiguration?: LinuxInstrumentationConfiguration; /** * Metadata to tag the build. The keys are case insensitive. The build metadata is made available to the server through * Game Server SDK (GSDK).Constraints: Maximum number of keys: 30, Maximum key length: 50, Maximum value length: 100 */ Metadata?: { [key: string]: string | null }; + /** The configuration for the monitoring application on the build */ + MonitoringApplicationConfiguration?: MonitoringApplicationConfigurationParams; /** The number of multiplayer servers to host on a single VM. */ MultiplayerServerCountPerVm: number; /** The OS platform used for running the game process. */ @@ -894,13 +1148,10 @@ declare module PlayFabMultiplayerModels { * relative to the root asset folder when unzipped. */ StartMultiplayerServerCommand: string; - /** - * When true, assets will be downloaded and uncompressed in memory, without the compressedversion being written first to - * disc. - */ - UseStreamingForAssetDownloads?: boolean; /** The VM size to create the build on. */ VmSize?: string; + /** The configuration for the VmStartupScript for the build */ + VmStartupScriptConfiguration?: VmStartupScriptParams; } @@ -922,6 +1173,8 @@ declare module PlayFabMultiplayerModels { GameAssetReferences?: AssetReference[]; /** The game certificates for the build. */ GameCertificateReferences?: GameCertificateReference[]; + /** The game secrets for the build. */ + GameSecretReferences?: GameSecretReference[]; /** * The working directory for the game process. If this is not provided, the working directory will be set based on the * mount path of the game server executable. @@ -934,8 +1187,12 @@ declare module PlayFabMultiplayerModels { * detect any breaking changes before they are released to retail. Retail builds should set this value to false. */ IsOSPreview?: boolean; + /** The Linux instrumentation configuration for this build. */ + LinuxInstrumentationConfiguration?: LinuxInstrumentationConfiguration; /** The metadata of the build. */ Metadata?: { [key: string]: string | null }; + /** The configuration for the monitoring application for the build */ + MonitoringApplicationConfiguration?: MonitoringApplicationConfiguration; /** The number of multiplayer servers to host on a single VM of the build. */ MultiplayerServerCountPerVm: number; /** The OS platform used for running the game process. */ @@ -958,6 +1215,76 @@ declare module PlayFabMultiplayerModels { UseStreamingForAssetDownloads?: boolean; /** The VM size the build was created on. */ VmSize?: string; + /** The configuration for the VmStartupScript feature for the build */ + VmStartupScriptConfiguration?: VmStartupScriptConfiguration; + + } + + export interface CreateLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * The policy indicating who is allowed to join the lobby, and the visibility to queries. May be 'Public', 'Friends' or + * 'Private'. Public means the lobby is both visible in queries and any player may join, including invited players. Friends + * means that users who are bidirectional friends of members in the lobby may search to find friend lobbies, to retrieve + * its connection string. Private means the lobby is not visible in queries, and a player must receive an invitation to + * join. Defaults to 'Public' on creation. Can only be changed by the lobby owner. + */ + AccessPolicy?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * The private key-value pairs which are visible to all entities in the lobby. At most 30 key-value pairs may be stored + * here, keys are limited to 30 characters and values to 1000. The total size of all lobbyData values may not exceed 4096 + * bytes. Keys are case sensitive. + */ + LobbyData?: { [key: string]: string | null }; + /** The maximum number of players allowed in the lobby. The value must be between 2 and 128. */ + MaxPlayers: number; + /** + * The member initially added to the lobby. Client must specify exactly one member, which is the creator's entity and + * member data. Member PubSubConnectionHandle must be null or empty. Game servers must not specify any members. + */ + Members?: Member[]; + /** The lobby owner. Must be the calling entity. */ + Owner: EntityKey; + /** + * The policy for how a new owner is chosen. May be 'Automatic', 'Manual' or 'None'. Can only be specified by clients. If + * client-owned and 'Automatic' - The Lobby service will automatically assign another connected owner when the current + * owner leaves or disconnects. The useConnections property must be true. If client - owned and 'Manual' - Ownership is + * protected as long as the current owner is connected. If the current owner leaves or disconnects any member may set + * themselves as the current owner. The useConnections property must be true. If client-owned and 'None' - Any member can + * set ownership. The useConnections property can be either true or false. + */ + OwnerMigrationPolicy?: string; + /** + * A setting that controls whether only the lobby owner can send invites to join the lobby. When true, only the lobby owner + * can send invites. When false or not specified, any member can send invites. Defaults to false if not specified. + * Restricted to client owned lobbies. + */ + RestrictInvitesToLobbyOwner: boolean; + /** + * The public key-value pairs which allow queries to differentiate between lobbies. Queries will refer to these key-value + * pairs in their filter and order by clauses to retrieve lobbies fitting the specified criteria. At most 30 key-value + * pairs may be stored here. Keys are of the format string_key1, string_key2 ... string_key30 for string values, or + * number_key1, number_key2, ... number_key30 for numeric values.Numeric values are floats. Values can be at most 256 + * characters long. The total size of all searchData values may not exceed 1024 bytes. + */ + SearchData?: { [key: string]: string | null }; + /** + * A setting to control whether connections are used. Defaults to true. When true, notifications are sent to subscribed + * players, disconnect detection removes connectionHandles, only owner migration policies using connections are allowed, + * and lobbies must have at least one connected member to be searchable or be a server hosted lobby with a connected + * server. If false, then notifications are not sent, connections are not allowed, and lobbies do not need connections to + * be searchable. + */ + UseConnections: boolean; + + } + + export interface CreateLobbyResult extends PlayFabModule.IPlayFabResultCommon { + /** A field which indicates which lobby the user will be joining. */ + ConnectionString: string; + /** Id to uniquely identify a lobby. */ + LobbyId: string; } @@ -1165,6 +1492,14 @@ declare module PlayFabMultiplayerModels { } + export interface DeleteLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The id of the lobby. */ + LobbyId?: string; + + } + export interface DeleteRemoteUserRequest extends PlayFabModule.IPlayFabRequestCommon { /** The guid string build ID of the multiplayer server where the remote user is to delete. */ BuildId: string; @@ -1179,6 +1514,14 @@ declare module PlayFabMultiplayerModels { } + export interface DeleteSecretRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the secret. */ + Name: string; + + } + export interface DifferenceRule { /** Description of the attribute used by this rule to match tickets. */ Attribute: QueueRuleAttribute; @@ -1215,6 +1558,17 @@ declare module PlayFabMultiplayerModels { } + type DirectPeerConnectivityOptions = "None" + + | "SamePlatformType" + | "DifferentPlatformType" + | "AnyPlatformType" + | "SameEntityLoginProvider" + | "DifferentEntityLoginProvider" + | "AnyEntityLoginProvider" + | "AnyPlatformTypeAndEntityLoginProvider" + | "OnlyServers"; + export interface DynamicStandbySettings { /** * List of auto standing by trigger values and corresponding standing by multiplier. Defaults to 1.5X at 50%, 3X at 25%, @@ -1260,6 +1614,113 @@ declare module PlayFabMultiplayerModels { } + type ExternalFriendSources = "None" + + | "Steam" + | "Facebook" + | "Xbox" + | "Psn" + | "All"; + + export interface FindFriendLobbiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Indicates which other platforms' friends this query should link to. */ + ExternalPlatformFriends?: string; + /** + * OData style string that contains one or more filters. Only the following operators are supported: "and" (logical and), + * "eq" (equal), "ne" (not equals), "ge" (greater than or equal), "gt" (greater than), "le" (less than or equal), and "lt" + * (less than). The left-hand side of each OData logical expression should be either a search property key (e.g. + * string_key1, number_key3, etc) or one of the pre-defined search keys all of which must be prefixed by "lobby/": + * lobby/memberCount (number of players in a lobby), lobby/maxMemberCount (maximum number of players allowed in a lobby), + * lobby/memberCountRemaining (remaining number of players who can be allowed in a lobby), lobby/membershipLock (must equal + * 'Unlocked' or 'Locked'), lobby/amOwner (required to equal "true"), lobby/amMember (required to equal "true"). + */ + Filter?: string; + /** + * OData style string that contains sorting for this query in either ascending ("asc") or descending ("desc") order. + * OrderBy clauses are of the form "number_key1 asc" or the pre-defined search key "lobby/memberCount asc", + * "lobby/memberCountRemaining desc" and "lobby/maxMemberCount desc". To sort by closest, a moniker `distance{number_key1 = + * 5}` can be used to sort by distance from the given number. This field only supports either one sort clause or one + * distance clause. + */ + OrderBy?: string; + /** Request pagination information. */ + Pagination?: PaginationRequest; + /** + * Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. Only mutual Xbox Live friends + * (where both users follow each other) are included, unlike GetFriendsList which includes all users the caller is + * following. + */ + XboxToken?: string; + + } + + export interface FindFriendLobbiesResult extends PlayFabModule.IPlayFabResultCommon { + /** Array of lobbies found that matched FindFriendLobbies request. */ + Lobbies: FriendLobbySummary[]; + /** Pagination response for FindFriendLobbies request. */ + Pagination: PaginationResponse; + + } + + export interface FindLobbiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * OData style string that contains one or more filters. Only the following operators are supported: "and" (logical and), + * "eq" (equal), "ne" (not equals), "ge" (greater than or equal), "gt" (greater than), "le" (less than or equal), and "lt" + * (less than). The left-hand side of each OData logical expression should be either a search property key (e.g. + * string_key1, number_key3, etc) or one of the pre-defined search keys all of which must be prefixed by "lobby/": + * lobby/memberCount (number of players in a lobby), lobby/maxMemberCount (maximum number of players allowed in a lobby), + * lobby/memberCountRemaining (remaining number of players who can be allowed in a lobby), lobby/membershipLock (must equal + * 'Unlocked' or 'Locked'), lobby/amOwner (required to equal "true"), lobby/amMember (required to equal "true"). + */ + Filter?: string; + /** + * OData style string that contains sorting for this query in either ascending ("asc") or descending ("desc") order. + * OrderBy clauses are of the form "number_key1 asc" or the pre-defined search key "lobby/memberCount asc", + * "lobby/memberCountRemaining desc" and "lobby/maxMemberCount desc". To sort by closest, a moniker `distance{number_key1 = + * 5}` can be used to sort by distance from the given number. This field only supports either one sort clause or one + * distance clause. + */ + OrderBy?: string; + /** Request pagination information. */ + Pagination?: PaginationRequest; + + } + + export interface FindLobbiesResult extends PlayFabModule.IPlayFabResultCommon { + /** Array of lobbies found that matched FindLobbies request. */ + Lobbies: LobbySummary[]; + /** Pagination response for FindLobbies request. */ + Pagination: PaginationResponse; + + } + + export interface FriendLobbySummary { + /** + * A string used to join the lobby.This field is populated by the Lobby service.Invites are performed by communicating this + * connectionString to other players. + */ + ConnectionString: string; + /** The current number of players in the lobby. */ + CurrentPlayers: number; + /** Friends in Lobby. */ + Friends?: EntityKey[]; + /** Id to uniquely identify a lobby. */ + LobbyId: string; + /** The maximum number of players allowed in the lobby. */ + MaxPlayers: number; + /** A setting indicating whether members are allowed to join this lobby. When Locked new members are prevented from joining. */ + MembershipLock?: string; + /** The client or server entity which owns this lobby. */ + Owner: EntityKey; + /** Search data. */ + SearchData?: { [key: string]: string | null }; + + } + export interface GameCertificateReference { /** * An alias for the game certificate. The game server will reference this alias via GSDK config to retrieve the game @@ -1290,6 +1751,34 @@ declare module PlayFabMultiplayerModels { } + export interface GameSecretReference { + /** The name of the game secret. This name should match the name of a secret that was previously added to this title. */ + Name?: string; + + } + + export interface GameSecretReferenceParams { + /** The name of the game secret. This name should match the name of a secret that was previously added to this title. */ + Name: string; + + } + + export interface GetAssetDownloadUrlRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The asset's file name to get the download URL for. */ + FileName: string; + + } + + export interface GetAssetDownloadUrlResponse extends PlayFabModule.IPlayFabResultCommon { + /** The asset's download URL. */ + AssetDownloadUrl?: string; + /** The asset's file name to get the download URL for. */ + FileName?: string; + + } + export interface GetAssetUploadUrlRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -1364,6 +1853,8 @@ declare module PlayFabMultiplayerModels { Ports?: Port[]; /** The region configuration for the build. */ RegionConfigurations?: BuildRegion[]; + /** The resource constraints to apply to each server on the VM. */ + ServerResourceConstraints?: ServerResourceConstraintParams; /** The type of game server being hosted. */ ServerType?: string; /** @@ -1371,13 +1862,10 @@ declare module PlayFabMultiplayerModels { * builds. If the build is a custom build, this field will be null. */ StartMultiplayerServerCommand?: string; - /** - * When true, assets will be downloaded and uncompressed in memory, without the compressedversion being written first to - * disc. - */ - UseStreamingForAssetDownloads?: boolean; /** The VM size the build was created on. */ VmSize?: string; + /** The configuration for the VmStartupScript feature for the build */ + VmStartupScriptConfiguration?: VmStartupScriptConfiguration; } @@ -1397,6 +1885,20 @@ declare module PlayFabMultiplayerModels { } + export interface GetLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The id of the lobby. */ + LobbyId?: string; + + } + + export interface GetLobbyResult extends PlayFabModule.IPlayFabResultCommon { + /** The information pertaining to the requested lobby. */ + Lobby: Lobby; + + } + export interface GetMatchmakingQueueRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -1427,8 +1929,13 @@ declare module PlayFabMultiplayerModels { } export interface GetMatchmakingTicketResult extends PlayFabModule.IPlayFabResultCommon { - /** The reason why the current ticket was canceled. This field is only set if the ticket is in canceled state. */ + /** + * The reason why the current ticket was canceled. This field is only set if the ticket is in canceled state. Please retry + * if CancellationReason is RetryRequired. + */ CancellationReasonString?: string; + /** Change number used for differentiating older matchmaking status updates from newer ones. */ + ChangeNumber?: number; /** The server date and time at which ticket was created. */ Created: string; /** The Creator's entity key. */ @@ -1471,6 +1978,8 @@ declare module PlayFabMultiplayerModels { } export interface GetMatchResult extends PlayFabModule.IPlayFabResultCommon { + /** A string that is used by players that are matched together to join an arranged lobby. */ + ArrangementString?: string; /** The Id of a match. */ MatchId: string; /** A list of Users that are matched together, along with their team assignments. */ @@ -1486,12 +1995,8 @@ declare module PlayFabMultiplayerModels { } export interface GetMultiplayerServerDetailsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The guid string build ID of the multiplayer server to get details for. */ - BuildId: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The region the multiplayer server is located in to get details for. */ - Region: string; /** * The title generated guid string session ID of the multiplayer server to get details for. This is to keep track of * multiplayer server sessions. @@ -1507,12 +2012,14 @@ declare module PlayFabMultiplayerModels { ConnectedPlayers?: ConnectedPlayer[]; /** The fully qualified domain name of the virtual machine that is hosting this multiplayer server. */ FQDN?: string; - /** The IPv4 address of the virtual machine that is hosting this multiplayer server. */ + /** The public IPv4 address of the virtual machine that is hosting this multiplayer server. */ IPV4Address?: string; /** The time (UTC) at which a change in the multiplayer server state was observed. */ LastStateTransitionTime?: string; /** The ports the multiplayer server uses. */ Ports?: Port[]; + /** The list of public Ipv4 addresses associated with the server. */ + PublicIPV4Addresses?: PublicIpAddress[]; /** The region the multiplayer server is located in. */ Region?: string; /** The string server ID of the multiplayer server generated by PlayFab. */ @@ -1660,15 +2167,133 @@ declare module PlayFabMultiplayerModels { } export interface InstrumentationConfiguration { + /** Designates whether windows instrumentation configuration will be enabled for this Build */ + IsEnabled?: boolean; /** - * The list of processes to be monitored on a VM for this build. Providing processes will turn on performance metrics - * collection for this build. Process names should not include extensions. If the game server process is: GameServer.exe; - * then, ProcessesToMonitor = [ GameServer ] + * This property is deprecated, use IsEnabled. The list of processes to be monitored on a VM for this build. Providing + * processes will turn on performance metrics collection for this build. Process names should not include extensions. If + * the game server process is: GameServer.exe; then, ProcessesToMonitor = [ GameServer ] */ ProcessesToMonitor?: string[]; } + export interface InviteToLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity invited to the lobby. */ + InviteeEntity?: EntityKey; + /** The id of the lobby. */ + LobbyId?: string; + /** The member entity sending the invite. Must be a member of the lobby. */ + MemberEntity?: EntityKey; + + } + + export interface JoinArrangedLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * The policy indicating who is allowed to join the lobby, and the visibility to queries. May be 'Public', 'Friends' or + * 'Private'. Public means the lobby is both visible in queries and any player may join, including invited players. Friends + * means that users who are bidirectional friends of members in the lobby may search to find friend lobbies, to retrieve + * its connection string. Private means the lobby is not visible in queries, and a player must receive an invitation to + * join. Defaults to 'Public' on creation. Can only be changed by the lobby owner. + */ + AccessPolicy?: string; + /** + * A field which indicates which lobby the user will be joining. This field is opaque to everyone except the Lobby service + * and the creator of the arrangementString (Matchmaking). This string defines a unique identifier for the arranged lobby + * as well as the title and member the string is valid for. Arrangement strings have an expiration. + */ + ArrangementString: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The maximum number of players allowed in the lobby. The value must be between 2 and 128. */ + MaxPlayers: number; + /** + * The private key-value pairs used by the member to communicate information to other members and the owner. Visible to all + * entities in the lobby. At most 30 key-value pairs may be stored here, keys are limited to 30 characters and values to + * 1000. The total size of all memberData values may not exceed 4096 bytes. Keys are case sensitive. + */ + MemberData?: { [key: string]: string | null }; + /** The member entity who is joining the lobby. The first member to join will be the lobby owner. */ + MemberEntity: EntityKey; + /** + * The policy for how a new owner is chosen. May be 'Automatic', 'Manual' or 'None'. Can only be specified by clients. If + * client-owned and 'Automatic' - The Lobby service will automatically assign another connected owner when the current + * owner leaves or disconnects. The useConnections property must be true. If client - owned and 'Manual' - Ownership is + * protected as long as the current owner is connected. If the current owner leaves or disconnects any member may set + * themselves as the current owner. The useConnections property must be true. If client-owned and 'None' - Any member can + * set ownership. The useConnections property can be either true or false. + */ + OwnerMigrationPolicy?: string; + /** + * A setting that controls whether only the lobby owner can send invites to join the lobby. When true, only the lobby owner + * can send invites. When false or not specified, any member can send invites. Defaults to false if not specified. + * Restricted to client owned lobbies. + */ + RestrictInvitesToLobbyOwner: boolean; + /** + * A setting to control whether connections are used. Defaults to true. When true, notifications are sent to subscribed + * players, disconnect detection removes connectionHandles, only owner migration policies using connections are allowed, + * and lobbies must have at least one connected member to be searchable or be a server hosted lobby with a connected + * server. If false, then notifications are not sent, connections are not allowed, and lobbies do not need connections to + * be searchable. + */ + UseConnections: boolean; + + } + + export interface JoinLobbyAsServerRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * A field which indicates which lobby the game_server will be joining. This field is opaque to everyone except the Lobby + * service. + */ + ConnectionString: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * The private key-value pairs which are visible to all entities in the lobby but can only be modified by the joined + * server.At most 30 key - value pairs may be stored here, keys are limited to 30 characters and values to 1000.The total + * size of all serverData values may not exceed 4096 bytes. + */ + ServerData?: { [key: string]: string | null }; + /** + * The game_server entity which is joining the Lobby. If a different game_server entity has already joined the request will + * fail unless the joined entity is disconnected, in which case the incoming game_server entity will replace the + * disconnected entity. + */ + ServerEntity: EntityKey; + + } + + export interface JoinLobbyAsServerResult extends PlayFabModule.IPlayFabResultCommon { + /** Successfully joined lobby's id. */ + LobbyId: string; + + } + + export interface JoinLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** A field which indicates which lobby the user will be joining. This field is opaque to everyone except the Lobby service. */ + ConnectionString?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * The private key-value pairs used by the member to communicate information to other members and the owner. Visible to all + * entities in the lobby. At most 30 key-value pairs may be stored here, keys are limited to 30 characters and values to + * 1000. The total size of all memberData values may not exceed 4096 bytes.Keys are case sensitive. + */ + MemberData?: { [key: string]: string | null }; + /** The member entity who is joining the lobby. */ + MemberEntity?: EntityKey; + + } + + export interface JoinLobbyResult extends PlayFabModule.IPlayFabResultCommon { + /** Successfully joined lobby's id. */ + LobbyId: string; + + } + export interface JoinMatchmakingTicketRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -1685,6 +2310,29 @@ declare module PlayFabMultiplayerModels { } + export interface LeaveLobbyAsServerRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The id of the lobby. */ + LobbyId: string; + /** + * The game_server entity leaving the lobby. If the game_server was subscribed to notifications, it will be unsubscribed. + * If a the given game_server entity is not in the lobby, it will fail. + */ + ServerEntity: EntityKey; + + } + + export interface LeaveLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The id of the lobby. */ + LobbyId?: string; + /** The member entity leaving the lobby. */ + MemberEntity?: EntityKey; + + } + export interface LinearDifferenceRuleExpansion { /** This value gets added to Difference at every expansion interval. */ Delta: number; @@ -1844,10 +2492,18 @@ declare module PlayFabMultiplayerModels { CustomTags?: { [key: string]: string | null }; /** The container images we want to list tags for. */ ImageName?: string; + /** The page size for the request. */ + PageSize?: number; + /** The skip token for the paged request. */ + SkipToken?: string; } export interface ListContainerImageTagsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The page size on the response. */ + PageSize: number; + /** The skip token for the paged response. */ + SkipToken?: string; /** The list of tags for a particular container image. */ Tags?: string[]; @@ -1868,7 +2524,7 @@ declare module PlayFabMultiplayerModels { export interface ListMatchmakingTicketsForPlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity key for which to find the ticket Ids. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The name of the queue to find a match for. */ QueueName: string; @@ -1929,6 +2585,8 @@ declare module PlayFabMultiplayerModels { * deployed for the title. */ IncludeAllRegions?: boolean; + /** Indicates the Routing Preference used by the Qos servers. The default Routing Preference is Microsoft */ + RoutingPreference?: string; } @@ -1942,10 +2600,30 @@ declare module PlayFabMultiplayerModels { } + export interface ListSecretSummariesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The page size for the request. */ + PageSize?: number; + /** The skip token for the paged request. */ + SkipToken?: string; + + } + + export interface ListSecretSummariesResponse extends PlayFabModule.IPlayFabResultCommon { + /** The page size on the response. */ + PageSize: number; + /** The list of game secret. */ + SecretSummaries?: SecretSummary[]; + /** The skip token for the paged response. */ + SkipToken?: string; + + } + export interface ListServerBackfillTicketsForPlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity key for which to find the ticket Ids. */ + /** The entity to perform this action on. */ Entity: EntityKey; /** The name of the queue the tickets are in. */ QueueName: string; @@ -1994,6 +2672,84 @@ declare module PlayFabMultiplayerModels { } + export interface Lobby { + /** A setting indicating who is allowed to join this lobby, as well as see it in queries. */ + AccessPolicy: string; + /** A number that increments once for each request that modifies the lobby. */ + ChangeNumber: number; + /** + * A string used to join the lobby. This field is populated by the Lobby service. Invites are performed by communicating + * this connectionString to other players. + */ + ConnectionString: string; + /** Lobby data. */ + LobbyData?: { [key: string]: string | null }; + /** Id to uniquely identify a lobby. */ + LobbyId: string; + /** The maximum number of players allowed in the lobby. */ + MaxPlayers: number; + /** Array of all lobby members. */ + Members?: Member[]; + /** A setting indicating whether members are allowed to join this lobby. When Locked new members are prevented from joining. */ + MembershipLock: string; + /** The client or server entity which owns this lobby. */ + Owner?: EntityKey; + /** A setting indicating the owner migration policy. If server owned, this field is not present. */ + OwnerMigrationPolicy?: string; + /** + * An opaque string stored on a SubscribeToLobbyResource call, which indicates the connection an owner or member has with + * PubSub. + */ + PubSubConnectionHandle?: string; + /** + * A setting that controls lobby invites. When true only owners can invite new players, when false all members area allowed + * to invite. + */ + RestrictInvitesToLobbyOwner: boolean; + /** Search data. */ + SearchData?: { [key: string]: string | null }; + /** Preview: Lobby joined server. This is not the server owner, rather the server that has joined a client owned lobby. */ + Server?: LobbyServer; + /** A flag which determines if connections are used. Defaults to true. Only set on create. */ + UseConnections: boolean; + + } + + export interface LobbyEmptyResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface LobbyServer { + /** Opaque string, stored on a Subscribe call, which indicates the connection a joined server has with PubSub. */ + PubSubConnectionHandle?: string; + /** Key-value pairs specific to the joined server. */ + ServerData?: { [key: string]: string | null }; + /** The server entity key. */ + ServerEntity?: EntityKey; + + } + + export interface LobbySummary { + /** + * A string used to join the lobby.This field is populated by the Lobby service.Invites are performed by communicating this + * connectionString to other players. + */ + ConnectionString: string; + /** The current number of players in the lobby. */ + CurrentPlayers: number; + /** Id to uniquely identify a lobby. */ + LobbyId: string; + /** The maximum number of players allowed in the lobby. */ + MaxPlayers: number; + /** A setting indicating whether members are allowed to join this lobby. When Locked new members are prevented from joining. */ + MembershipLock?: string; + /** The client or server entity which owns this lobby. */ + Owner: EntityKey; + /** Search data. */ + SearchData?: { [key: string]: string | null }; + + } + export interface MatchmakingPlayer { /** The user's attributes custom to the title. */ Attributes?: MatchmakingPlayerAttributes; @@ -2024,6 +2780,8 @@ declare module PlayFabMultiplayerModels { } export interface MatchmakingQueueConfig { + /** This is the buildAlias that will be used to allocate the multiplayer server for the match. */ + BuildAliasParams?: BuildAliasParams; /** This is the buildId that will be used to allocate the multiplayer server for the match. */ BuildId?: string; /** List of difference rules used to find an optimal match. */ @@ -2100,6 +2858,44 @@ declare module PlayFabMultiplayerModels { } + export interface Member { + /** Key-value pairs specific to member. */ + MemberData?: { [key: string]: string | null }; + /** The member entity key. */ + MemberEntity?: EntityKey; + /** Opaque string, stored on a Subscribe call, which indicates the connection an owner or member has with PubSub. */ + PubSubConnectionHandle?: string; + + } + + type MembershipLock = "Unlocked" + + | "Locked"; + + export interface MonitoringApplicationConfiguration { + /** Asset which contains the monitoring application files and scripts. */ + AssetReference: AssetReference; + /** Execution script name, this will be the main executable for the monitoring application. */ + ExecutionScriptName: string; + /** Installation script name, this will be run before the ExecutionScript. */ + InstallationScriptName?: string; + /** Timespan the monitoring application will be kept alive when running from the start of the VM */ + OnStartRuntimeInMinutes?: number; + + } + + export interface MonitoringApplicationConfigurationParams { + /** Asset which contains the monitoring application files and scripts. */ + AssetReference: AssetReferenceParams; + /** Execution script name, this will be the main executable for the monitoring application. */ + ExecutionScriptName: string; + /** Installation script name, this will be run before the ExecutionScript. */ + InstallationScriptName?: string; + /** Timespan the monitoring application will be kept alive when running from the start of the VM */ + OnStartRuntimeInMinutes?: number; + + } + export interface MultiplayerServerSummary { /** The connected players in the multiplayer server. */ ConnectedPlayers?: ConnectedPlayer[]; @@ -2119,6 +2915,7 @@ declare module PlayFabMultiplayerModels { } type OsPlatform = "Windows" + | "Linux"; export interface OverrideDouble { @@ -2133,6 +2930,67 @@ declare module PlayFabMultiplayerModels { } + type OwnerMigrationPolicy = "None" + + | "Automatic" + | "Manual" + | "Server"; + + export interface PaginationRequest { + /** Continuation token returned as a result in a previous FindLobbies call. Cannot be specified by clients. */ + ContinuationToken?: string; + /** The number of lobbies that should be retrieved. Cannot be specified by servers, clients may specify any value up to 50 */ + PageSizeRequested?: number; + + } + + export interface PaginationResponse { + /** Continuation token returned by server call. Not returned for clients */ + ContinuationToken?: string; + /** The number of lobbies that matched the search request. */ + TotalMatchedLobbyCount?: number; + + } + + export interface PartyInvitationConfiguration { + /** + * The list of PlayFab EntityKeys that the invitation allows to authenticate into the network. If this list is empty, all + * users are allowed to authenticate using the invitation's identifier. This list may contain no more than 1024 items. + */ + EntityKeys?: EntityKey[]; + /** The invite identifier for this party. If this value is specified, it must be no longer than 127 characters. */ + Identifier?: string; + /** Controls which participants can revoke this invite. */ + Revocability?: string; + + } + + type PartyInvitationRevocability = "Creator" + + | "Anyone"; + + export interface PartyNetworkConfiguration { + /** Controls whether and how to support direct peer-to-peer connection attempts among devices in the network. */ + DirectPeerConnectivityOptions?: string; + /** The maximum number of devices allowed to connect to the network. Must be between 1 and 128, inclusive. */ + MaxDevices: number; + /** The maximum number of devices allowed per user. Must be greater than 0. */ + MaxDevicesPerUser: number; + /** The maximum number of endpoints allowed per device. Must be between 0 and 32, inclusive. */ + MaxEndpointsPerDevice: number; + /** The maximum number of unique users allowed in the network. Must be greater than 0. */ + MaxUsers: number; + /** The maximum number of users allowed per device. Must be between 1 and 8, inclusive. */ + MaxUsersPerDevice: number; + /** + * An optionally-specified configuration for the initial invitation for this party. If not provided, default configuration + * values will be used: a title-unique invitation identifier will be generated, the revocability will be Anyone, and the + * EntityID list will be empty. + */ + PartyInvitationConfiguration?: PartyInvitationConfiguration; + + } + export interface Port { /** The name for the port. */ Name: string; @@ -2144,8 +3002,19 @@ declare module PlayFabMultiplayerModels { } type ProtocolType = "TCP" + | "UDP"; + export interface PublicIpAddress { + /** FQDN of the public IP */ + FQDN: string; + /** Server IP Address */ + IpAddress: string; + /** Routing Type of the public IP. */ + RoutingType: string; + + } + export interface QosServer { /** The region the QoS server is located in. */ Region?: string; @@ -2216,6 +3085,18 @@ declare module PlayFabMultiplayerModels { } + export interface RemoveMemberFromLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The id of the lobby. */ + LobbyId?: string; + /** The member entity to be removed from the lobby. */ + MemberEntity?: EntityKey; + /** If true, removed member can never rejoin this lobby. */ + PreventRejoin: boolean; + + } + export interface RequestMultiplayerServerRequest extends PlayFabModule.IPlayFabRequestCommon { /** The identifiers of the build alias to use for the request. */ BuildAliasParams?: BuildAliasParams; @@ -2234,8 +3115,8 @@ declare module PlayFabMultiplayerModels { */ PreferredRegions: string[]; /** - * Data encoded as a string that is passed to the game server when requested. This can be used to to communicate - * information such as game mode or map through the request flow. + * Data encoded as a string that is passed to the game server when requested. This can be used to communicate information + * such as game mode or map through the request flow. Maximum size is 8KB */ SessionCookie?: string; /** A guid string session ID created track the multiplayer server session over its life. */ @@ -2250,12 +3131,14 @@ declare module PlayFabMultiplayerModels { ConnectedPlayers?: ConnectedPlayer[]; /** The fully qualified domain name of the virtual machine that is hosting this multiplayer server. */ FQDN?: string; - /** The IPv4 address of the virtual machine that is hosting this multiplayer server. */ + /** The public IPv4 address of the virtual machine that is hosting this multiplayer server. */ IPV4Address?: string; /** The time (UTC) at which a change in the multiplayer server state was observed. */ LastStateTransitionTime?: string; /** The ports the multiplayer server uses. */ Ports?: Port[]; + /** The list of public Ipv4 addresses associated with the server. */ + PublicIPV4Addresses?: PublicIpAddress[]; /** The region the multiplayer server is located in. */ Region?: string; /** The string server ID of the multiplayer server generated by PlayFab. */ @@ -2269,6 +3152,38 @@ declare module PlayFabMultiplayerModels { } + export interface RequestPartyServiceRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The network configuration for this request. */ + NetworkConfiguration: PartyNetworkConfiguration; + /** A guid string party ID created track the party session over its life. */ + PartyId?: string; + /** A player entity Id on behalf of whom the request is being made. */ + PlayFabId?: string; + /** + * The preferred regions to request a party session from. The party service will iterate through the regions in the + * specified order and allocate a party session from the first one that is available. + */ + PreferredRegions: string[]; + + } + + export interface RequestPartyServiceResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * The invitation identifier supplied in the PartyInvitationConfiguration, or the PlayFab-generated guid if none was + * supplied. + */ + InvitationId?: string; + /** The guid string party ID of the party session. */ + PartyId?: string; + /** The region the party session is located in. */ + Region?: string; + /** A base-64 encoded string containing the serialized network descriptor for this party. */ + SerializedNetworkDescriptor?: string; + + } + export interface RolloverContainerRegistryCredentialsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -2285,6 +3200,10 @@ declare module PlayFabMultiplayerModels { } + type RoutingType = "Microsoft" + + | "Internet"; + export interface Schedule { /** A short description about this schedule. For example, "Game launch on July 15th". */ Description?: string; @@ -2312,6 +3231,26 @@ declare module PlayFabMultiplayerModels { } + export interface Secret { + /** Optional secret expiration date. */ + ExpirationDate?: string; + /** A name for the secret. This is used to reference secrets in build configurations. */ + Name: string; + /** Secret value. */ + Value: string; + + } + + export interface SecretSummary { + /** Optional secret expiration date. */ + ExpirationDate?: string; + /** The name of the secret. */ + Name?: string; + /** The secret version auto-generated after upload. */ + Version?: string; + + } + export interface ServerDetails { /** The fully qualified domain name of the virtual machine that is hosting this multiplayer server. */ Fqdn?: string; @@ -2321,10 +3260,24 @@ declare module PlayFabMultiplayerModels { Ports?: Port[]; /** The server's region. */ Region?: string; + /** The string server ID of the multiplayer server generated by PlayFab. */ + ServerId?: string; + + } + + export interface ServerResourceConstraintParams { + /** The maximum number of cores that each server is allowed to use. */ + CpuLimit: number; + /** + * The maximum number of GiB of memory that each server is allowed to use. WARNING: After exceeding this limit, the server + * will be killed + */ + MemoryLimitGB: number; } type ServerType = "Container" + | "Process"; export interface SetIntersectionRule { @@ -2365,7 +3318,7 @@ declare module PlayFabMultiplayerModels { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** The matchmaking queue config. */ - MatchmakingQueue?: MatchmakingQueueConfig; + MatchmakingQueue: MatchmakingQueueConfig; } @@ -2374,12 +3327,8 @@ declare module PlayFabMultiplayerModels { } export interface ShutdownMultiplayerServerRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The guid string build ID of the multiplayer server to delete. */ - BuildId: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The region of the multiplayer server to shut down. */ - Region: string; /** A guid string session ID of the multiplayer server to shut down. */ SessionId: string; @@ -2443,6 +3392,70 @@ declare module PlayFabMultiplayerModels { } + export interface SubscribeToLobbyResourceRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity performing the subscription. */ + EntityKey: EntityKey; + /** Opaque string, given to a client upon creating a connection with PubSub. */ + PubSubConnectionHandle: string; + /** + * The name of the resource to subscribe to. For LobbyChange subscriptions this is the lobbyId. For LobbyInvite + * subscriptions this should always be "@me". + */ + ResourceId: string; + /** Version number for the subscription of this resource. */ + SubscriptionVersion: number; + /** + * Subscription type. "LobbyChange" subscriptions allow a member or owner to receive notifications of lobby data, member or + * owner changes. "LobbyInvite" subscriptions allow a player to receive invites to lobbies. A player does not need to be a + * member of a lobby to receive lobby invites. + */ + Type: string; + + } + + export interface SubscribeToLobbyResourceResult extends PlayFabModule.IPlayFabResultCommon { + /** Topic will be returned in all notifications that are the result of this subscription. */ + Topic: string; + + } + + export interface SubscribeToMatchResourceRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity performing the subscription. The entity must be authorized to use this connectionHandle. */ + EntityKey: EntityKey; + /** + * Opaque string, given to a client upon creating a connection with PubSub. Notifications will be sent to the connection + * associated with this handle. + */ + PubSubConnectionHandle: string; + /** + * The name of the resource to subscribe to. It follows the format {queueName}|{ticketId} for MatchTicketStatusChange. For + * MatchInvite, ResourceId is @me. + */ + ResourceId: string; + /** Version number for the subscription of this resource. Current supported version must be 1. */ + SubscriptionVersion: number; + /** + * Subscription type. MatchInvite subscriptions are per-player. MatchTicketStatusChange subscriptions are per-ticket. + * Subscribe calls are idempotent. Subscribing on the same resource for the same connection results in success. + */ + Type: string; + + } + + export interface SubscribeToMatchResourceResult extends PlayFabModule.IPlayFabResultCommon { + /** Matchmaking resource */ + Topic: string; + + } + + type SubscriptionType = "LobbyChange" + + | "LobbyInvite"; + export interface TeamDifferenceRule { /** Description of the attribute used by this rule to match teams. */ Attribute: QueueRuleAttribute; @@ -2502,6 +3515,7 @@ declare module PlayFabMultiplayerModels { } type TitleMultiplayerServerEnabledStatus = "Initializing" + | "Enabled" | "Disabled"; @@ -2511,6 +3525,45 @@ declare module PlayFabMultiplayerModels { } + export interface UnsubscribeFromLobbyResourceRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity which performed the subscription. */ + EntityKey: EntityKey; + /** Opaque string, given to a client upon creating a connection with PubSub. */ + PubSubConnectionHandle: string; + /** The name of the resource to unsubscribe from. */ + ResourceId: string; + /** Version number passed for the subscription of this resource. */ + SubscriptionVersion: number; + /** Subscription type. */ + Type: string; + + } + + export interface UnsubscribeFromMatchResourceRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity performing the unsubscription. The entity must be authorized to use this connectionHandle. */ + EntityKey: EntityKey; + /** Opaque string, given to a client upon creating a connection with PubSub. */ + PubSubConnectionHandle: string; + /** + * The name of the resource to unsubscribe from. It follows the format {queueName}|{ticketId} for MatchTicketStatusChange. + * For MatchInvite, ResourceId is @me. + */ + ResourceId: string; + /** Version number for the unsubscription from this resource. */ + SubscriptionVersion: number; + /** Type of the subscription to be canceled. */ + Type: string; + + } + + export interface UnsubscribeFromMatchResourceResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface UntagContainerImageRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -2563,14 +3616,138 @@ declare module PlayFabMultiplayerModels { } + export interface UpdateLobbyAsServerRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The id of the lobby. */ + LobbyId: string; + /** + * The private key-value pairs which are visible to all entities in the lobby and modifiable by the joined server. + * Optional. Sets or updates key-value pairs on the lobby. Only the current lobby lobby server can set serverData. Keys may + * be an arbitrary string of at most 30 characters. The total size of all serverData values may not exceed 4096 bytes. + * Values are not individually limited. There can be up to 30 key-value pairs stored here. Keys are case sensitive. + */ + ServerData?: { [key: string]: string | null }; + /** + * The keys to delete from the lobby serverData. Optional. Optional. Deletes key-value pairs on the lobby. Only the current + * joined lobby server can delete serverData. All the specified keys will be removed from the serverData. Keys that do not + * exist in the lobby are a no-op. If the key to delete exists in the serverData (same request) it will result in a bad + * request. + */ + ServerDataToDelete?: string[]; + /** + * The lobby server. Optional. Set a different server as the joined server of the lobby (there can only be 1 joined + * server). When changing the server the previous server will automatically be unsubscribed. + */ + ServerEntity?: EntityKey; + + } + + export interface UpdateLobbyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * The policy indicating who is allowed to join the lobby, and the visibility to queries. May be 'Public', 'Friends' or + * 'Private'. Public means the lobby is both visible in queries and any player may join, including invited players. Friends + * means that users who are bidirectional friends of members in the lobby may search to find friend lobbies, to retrieve + * its connection string. Private means the lobby is not visible in queries, and a player must receive an invitation to + * join. Defaults to 'Public' on creation. Can only be changed by the lobby owner. + */ + AccessPolicy?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * The private key-value pairs which are visible to all entities in the lobby. Optional. Sets or updates key-value pairs on + * the lobby. Only the current lobby owner can set lobby data. Keys may be an arbitrary string of at most 30 characters. + * The total size of all lobbyData values may not exceed 4096 bytes. Values are not individually limited. There can be up + * to 30 key-value pairs stored here. Keys are case sensitive. + */ + LobbyData?: { [key: string]: string | null }; + /** The keys to delete from the lobby LobbyData. Optional. Behaves similar to searchDataToDelete, but applies to lobbyData. */ + LobbyDataToDelete?: string[]; + /** The id of the lobby. */ + LobbyId?: string; + /** + * The maximum number of players allowed in the lobby. Updates the maximum allowed number of players in the lobby. Only the + * current lobby owner can set this. If set, the value must be greater than or equal to the number of members currently in + * the lobby. + */ + MaxPlayers?: number; + /** + * The private key-value pairs used by the member to communicate information to other members and the owner. Optional. Sets + * or updates new key-value pairs on the caller's member data. New keys will be added with their values and existing keys + * will be updated with the new values. Visible to all entities in the lobby. At most 30 key-value pairs may be stored + * here, keys are limited to 30 characters and values to 1000. The total size of all memberData values may not exceed 4096 + * bytes. Keys are case sensitive. Servers cannot specifiy this. + */ + MemberData?: { [key: string]: string | null }; + /** + * The keys to delete from the lobby MemberData. Optional. Deletes key-value pairs on the caller's member data. All the + * specified keys will be removed from the caller's member data. Keys that do not exist are a no-op. If the key to delete + * exists in the memberData (same request) it will result in a bad request. Servers cannot specifiy this. + */ + MemberDataToDelete?: string[]; + /** The member entity whose data is being modified. Servers cannot specify this. */ + MemberEntity?: EntityKey; + /** + * A setting indicating whether the lobby is locked. May be 'Unlocked' or 'Locked'. When Locked new members are not allowed + * to join. Defaults to 'Unlocked' on creation. Can only be changed by the lobby owner. + */ + MembershipLock?: string; + /** + * The lobby owner. Optional. Set to transfer ownership of the lobby. If client - owned and 'Automatic' - The Lobby service + * will automatically assign another connected owner when the current owner leaves or disconnects. useConnections must be + * true. If client - owned and 'Manual' - Ownership is protected as long as the current owner is connected. If the current + * owner leaves or disconnects any member may set themselves as the current owner. The useConnections property must be + * true. If client-owned and 'None' - Any member can set ownership. The useConnections property can be either true or + * false. For all client-owned lobbies when the owner leaves and a new owner can not be automatically selected - The owner + * field is set to null. For all client-owned lobbies when the owner disconnects and a new owner can not be automatically + * selected - The owner field remains unchanged and the current owner retains all owner abilities for the lobby. If + * server-owned (must be 'Server') - Any server can set ownership. The useConnections property must be true. + */ + Owner?: EntityKey; + /** + * A setting that controls whether only the lobby owner can send invites to join the lobby. When true, only the lobby owner + * can send invites. When false or not specified, any member can send invites. Will not modify current configuration if not + * specified. Restricted to client owned lobbies. + */ + RestrictInvitesToLobbyOwner?: boolean; + /** + * The public key-value pairs which allow queries to differentiate between lobbies. Optional. Sets or updates key-value + * pairs on the lobby for use with queries. Only the current lobby owner can set search data. New keys will be added with + * their values and existing keys will be updated with the new values. There can be up to 30 key-value pairs stored here. + * Keys are of the format string_key1, string_key2... string_key30 for string values, or number_key1, number_key2, ... + * number_key30 for numeric values. Numeric values are floats. Values can be at most 256 characters long. The total size of + * all searchData values may not exceed 1024 bytes.Keys are case sensitive. + */ + SearchData?: { [key: string]: string | null }; + /** + * The keys to delete from the lobby SearchData. Optional. Deletes key-value pairs on the lobby. Only the current lobby + * owner can delete search data. All the specified keys will be removed from the search data. Keys that do not exist in the + * lobby are a no-op.If the key to delete exists in the searchData (same request) it will result in a bad request. + */ + SearchDataToDelete?: string[]; + + } + export interface UploadCertificateRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; + /** Forces the certificate renewal if the certificate already exists. Default is false */ + ForceUpdate?: boolean; /** The game certificate to upload. */ GameCertificate: Certificate; } + export interface UploadSecretRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Forces the secret renewal if the secret already exists. Default is false */ + ForceUpdate?: boolean; + /** The game secret to add. */ + GameSecret: Secret; + + } + export interface VirtualMachineSummary { /** The virtual machine health status. */ HealthStatus?: string; @@ -2581,5 +3758,47 @@ declare module PlayFabMultiplayerModels { } + export interface VmStartupScriptConfiguration { + /** Optional port requests (name/protocol) that will be used by the VmStartupScript. Max of 5 requests. */ + PortRequests?: VmStartupScriptPortRequest[]; + /** Asset which contains the VmStartupScript script and any other required files. */ + VmStartupScriptAssetReference: AssetReference; + + } + + export interface VmStartupScriptParams { + /** Optional port requests (name/protocol) that will be used by the VmStartupScript. Max of 5 requests. */ + PortRequests?: VmStartupScriptPortRequestParams[]; + /** Asset which contains the VmStartupScript script and any other required files. */ + VmStartupScriptAssetReference: AssetReferenceParams; + + } + + export interface VmStartupScriptPortRequest { + /** The name for the port. */ + Name: string; + /** The protocol for the port. */ + Protocol: string; + + } + + export interface VmStartupScriptPortRequestParams { + /** The name for the port. */ + Name: string; + /** The protocol for the port. */ + Protocol: string; + + } + + export interface WindowsCrashDumpConfiguration { + /** See https://docs.microsoft.com/en-us/windows/win32/wer/collecting-user-mode-dumps for valid values. */ + CustomDumpFlags?: number; + /** See https://docs.microsoft.com/en-us/windows/win32/wer/collecting-user-mode-dumps for valid values. */ + DumpType?: number; + /** Designates whether automatic crash dump capturing will be enabled for this Build. */ + IsEnabled: boolean; + + } + } diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabProfilesApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabProfilesApi.d.ts index f04680ef..ce708bfc 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabProfilesApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabProfilesApi.d.ts @@ -8,44 +8,55 @@ declare module PlayFabProfilesModule { * Gets the global title access policy * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/getglobalpolicy */ - GetGlobalPolicy(request: PlayFabProfilesModels.GetGlobalPolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetGlobalPolicy(request: PlayFabProfilesModels.GetGlobalPolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the entity's profile. * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/getprofile */ - GetProfile(request: PlayFabProfilesModels.GetEntityProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetProfile(request: PlayFabProfilesModels.GetEntityProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the entity's profile. * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/getprofiles */ - GetProfiles(request: PlayFabProfilesModels.GetEntityProfilesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetProfiles(request: PlayFabProfilesModels.GetEntityProfilesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title player accounts associated with the given master player account. * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/gettitleplayersfrommasterplayeraccountids */ - GetTitlePlayersFromMasterPlayerAccountIds(request: PlayFabProfilesModels.GetTitlePlayersFromMasterPlayerAccountIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitlePlayersFromMasterPlayerAccountIds(request: PlayFabProfilesModels.GetTitlePlayersFromMasterPlayerAccountIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the title player accounts associated with the given XUIDs. + * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/gettitleplayersfromxboxliveids + */ + GetTitlePlayersFromXboxLiveIDs(request: PlayFabProfilesModels.GetTitlePlayersFromXboxLiveIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Update the display name of the entity + * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/setdisplayname + */ + SetDisplayName(request: PlayFabProfilesModels.SetDisplayNameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the global title access policy * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/setglobalpolicy */ - SetGlobalPolicy(request: PlayFabProfilesModels.SetGlobalPolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetGlobalPolicy(request: PlayFabProfilesModels.SetGlobalPolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the entity's language. The precedence hierarchy for communication to the player is Title Player Account * language, Master Player Account language, and then title default language if the first two aren't set or supported. * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/setprofilelanguage */ - SetProfileLanguage(request: PlayFabProfilesModels.SetProfileLanguageRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetProfileLanguage(request: PlayFabProfilesModels.SetProfileLanguageRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the profiles access policy * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/setprofilepolicy */ - SetProfilePolicy(request: PlayFabProfilesModels.SetEntityProfilePolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetProfilePolicy(request: PlayFabProfilesModels.SetEntityProfilePolicyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } declare module PlayFabProfilesModels { type EffectType = "Allow" + | "Deny"; export interface EntityDataObject { @@ -118,8 +129,6 @@ declare module PlayFabProfilesModels { Files?: { [key: string]: EntityProfileFileMetadata }; /** The language on this profile. */ Language?: string; - /** Leaderboard metadata for the entity. */ - LeaderboardMetadata?: string; /** The lineage of this profile. */ Lineage?: EntityLineage; /** The objects on this profile. */ @@ -131,6 +140,8 @@ declare module PlayFabProfilesModels { Permissions?: EntityPermissionStatement[]; /** The statistics on this profile. */ Statistics?: { [key: string]: EntityStatisticValue }; + /** A mapping of statistic name to the columns defined in the corresponding definition. */ + StatisticsColumnDetails?: { [key: string]: StatisticColumnCollection }; /** * The version number of the profile in persistent storage at the time of the read. Used for optional optimistic * concurrency during update. @@ -151,25 +162,13 @@ declare module PlayFabProfilesModels { } - export interface EntityStatisticChildValue { - /** Child name value, if child statistic */ - ChildName?: string; - /** Child statistic metadata */ - Metadata?: string; - /** Child statistic value */ - Value: number; - - } - export interface EntityStatisticValue { - /** Child statistic values */ - ChildStatistics?: { [key: string]: EntityStatisticChildValue }; - /** Statistic metadata */ + /** Metadata associated with the Statistic. */ Metadata?: string; /** Statistic name */ Name?: string; - /** Statistic value */ - Value?: number; + /** Statistic scores */ + Scores?: string[]; /** Statistic version */ Version: number; @@ -183,8 +182,10 @@ declare module PlayFabProfilesModels { * JSON string. */ DataAsObject?: boolean; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; + /** Determines whether the entity statistics will be returned in the entity profile. Default is false. */ + IncludeStatistics: boolean; } @@ -204,6 +205,8 @@ declare module PlayFabProfilesModels { DataAsObject?: boolean; /** Entity keys of the profiles to load. Must be between 1 and 25 */ Entities: EntityKey[]; + /** Determines whether the entity statistics will be returned in the entity profile. Default is false. */ + IncludeStatistics: boolean; } @@ -216,6 +219,8 @@ declare module PlayFabProfilesModels { export interface GetGlobalPolicyRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; } @@ -243,18 +248,60 @@ declare module PlayFabProfilesModels { } + export interface GetTitlePlayersFromProviderIDsResponse extends PlayFabModule.IPlayFabResultCommon { + /** + * Dictionary of provider identifiers mapped to title_player_account lineage. Missing lineage indicates the player either + * doesn't exist or doesn't play the requested title. + */ + TitlePlayerAccounts?: { [key: string]: EntityLineage }; + + } + + export interface GetTitlePlayersFromXboxLiveIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Xbox Sandbox the players had on their Xbox tokens. */ + Sandbox: string; + /** Optional ID of title to get players from, required if calling using a master_player_account. */ + TitleId?: string; + /** List of Xbox Live XUIDs */ + XboxLiveIds: string[]; + + } + type OperationTypes = "Created" + | "Updated" | "Deleted" | "None"; + export interface SetDisplayNameRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The new value to be set on Entity Profile's display name */ + DisplayName?: string; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** The expected version of a profile to perform this update on */ + ExpectedVersion?: number; + + } + + export interface SetDisplayNameResponse extends PlayFabModule.IPlayFabResultCommon { + /** The type of operation that occured on the profile's display name */ + OperationResult?: string; + /** The updated version of the profile after the display name update */ + VersionNumber?: number; + + } + export interface SetEntityProfilePolicyRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** The entity to perform this action on. */ Entity: EntityKey; /** The statements to include in the access policy. */ - Statements?: EntityPermissionStatement[]; + Statements: EntityPermissionStatement[]; } @@ -282,7 +329,7 @@ declare module PlayFabProfilesModels { export interface SetProfileLanguageRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** The entity to perform this action on. */ + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ Entity?: EntityKey; /** The expected version of a profile to perform this update on */ ExpectedVersion?: number; @@ -299,5 +346,25 @@ declare module PlayFabProfilesModels { } + type StatisticAggregationMethod = "Last" + + | "Min" + | "Max" + | "Sum"; + + export interface StatisticColumn { + /** Aggregation method for calculating new value of a statistic. */ + AggregationMethod: string; + /** Name of the statistic column, as originally configured. */ + Name: string; + + } + + export interface StatisticColumnCollection { + /** Columns for the statistic defining the aggregation method for each column. */ + Columns?: StatisticColumn[]; + + } + } diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabProgressionApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabProgressionApi.d.ts new file mode 100644 index 00000000..00230005 --- /dev/null +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabProgressionApi.d.ts @@ -0,0 +1,815 @@ +/// + +declare module PlayFabProgressionModule { + export interface IPlayFabProgression { + ForgetAllCredentials(): void; + + /** + * Creates a new leaderboard definition. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/createleaderboarddefinition + */ + CreateLeaderboardDefinition(request: PlayFabProgressionModels.CreateLeaderboardDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Create a new entity statistic definition. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/createstatisticdefinition + */ + CreateStatisticDefinition(request: PlayFabProgressionModels.CreateStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes a leaderboard definition. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/deleteleaderboarddefinition + */ + DeleteLeaderboardDefinition(request: PlayFabProgressionModels.DeleteLeaderboardDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes the specified entries from the given leaderboard. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/deleteleaderboardentries + */ + DeleteLeaderboardEntries(request: PlayFabProgressionModels.DeleteLeaderboardEntriesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Delete an entity statistic definition. Will delete all statistics on entity profiles and leaderboards. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/deletestatisticdefinition + */ + DeleteStatisticDefinition(request: PlayFabProgressionModels.DeleteStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Delete statistics on an entity profile. This will remove all rankings from associated leaderboards. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/deletestatistics + */ + DeleteStatistics(request: PlayFabProgressionModels.DeleteStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get the friend leaderboard for the specified entity. A maximum of 25 friend entries are listed in the leaderboard. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/getfriendleaderboardforentity + */ + GetFriendLeaderboardForEntity(request: PlayFabProgressionModels.GetFriendLeaderboardForEntityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get the leaderboard for a specific entity type and statistic. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/getleaderboard + */ + GetLeaderboard(request: PlayFabProgressionModels.GetEntityLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get the leaderboard around a specific entity. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/getleaderboardaroundentity + */ + GetLeaderboardAroundEntity(request: PlayFabProgressionModels.GetLeaderboardAroundEntityRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets the specified leaderboard definition. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/getleaderboarddefinition + */ + GetLeaderboardDefinition(request: PlayFabProgressionModels.GetLeaderboardDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get the leaderboard limited to a set of entities. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/getleaderboardforentities + */ + GetLeaderboardForEntities(request: PlayFabProgressionModels.GetLeaderboardForEntitiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get current statistic definition information + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/getstatisticdefinition + */ + GetStatisticDefinition(request: PlayFabProgressionModels.GetStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets statistics for the specified entity. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/getstatistics + */ + GetStatistics(request: PlayFabProgressionModels.GetStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Gets statistics for the specified collection of entities. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/getstatisticsforentities + */ + GetStatisticsForEntities(request: PlayFabProgressionModels.GetStatisticsForEntitiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Increment a leaderboard version. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/incrementleaderboardversion + */ + IncrementLeaderboardVersion(request: PlayFabProgressionModels.IncrementLeaderboardVersionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Increment an entity statistic definition version. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/incrementstatisticversion + */ + IncrementStatisticVersion(request: PlayFabProgressionModels.IncrementStatisticVersionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Lists the leaderboard definitions defined for the Title. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/listleaderboarddefinitions + */ + ListLeaderboardDefinitions(request: PlayFabProgressionModels.ListLeaderboardDefinitionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get all current statistic definitions information + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/liststatisticdefinitions + */ + ListStatisticDefinitions(request: PlayFabProgressionModels.ListStatisticDefinitionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks an aggregation source from a statistic definition. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/unlinkaggregationsourcefromstatistic + */ + UnlinkAggregationSourceFromStatistic(request: PlayFabProgressionModels.UnlinkAggregationSourceFromStatisticRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks a leaderboard definition from it's linked statistic definition. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/unlinkleaderboardfromstatistic + */ + UnlinkLeaderboardFromStatistic(request: PlayFabProgressionModels.UnlinkLeaderboardFromStatisticRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Updates a leaderboard definition. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/updateleaderboarddefinition + */ + UpdateLeaderboardDefinition(request: PlayFabProgressionModels.UpdateLeaderboardDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Adds or updates entries on the specified leaderboard. + * https://docs.microsoft.com/rest/api/playfab/progression/leaderboards/updateleaderboardentries + */ + UpdateLeaderboardEntries(request: PlayFabProgressionModels.UpdateLeaderboardEntriesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Update an existing entity statistic definition. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/updatestatisticdefinition + */ + UpdateStatisticDefinition(request: PlayFabProgressionModels.UpdateStatisticDefinitionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Update statistics on an entity profile. Depending on the statistic definition, this may result in entity being ranked on + * various leaderboards. + * https://docs.microsoft.com/rest/api/playfab/progression/statistics/updatestatistics + */ + UpdateStatistics(request: PlayFabProgressionModels.UpdateStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + + } +} + +declare module PlayFabProgressionModels { + export interface CreateLeaderboardDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Leaderboard columns describing the sort directions, cannot be changed after creation. A maximum of 5 columns are + * allowed. + */ + Columns: LeaderboardColumn[]; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * The entity type being represented on the leaderboard. If it doesn't correspond to the PlayFab entity types, use + * 'external' as the type. + */ + EntityType: string; + /** [In Preview]: The configuration for the events emitted by this leaderboard. If not specified, no events will be emitted. */ + EventEmissionConfig?: LeaderboardEventEmissionConfig; + /** A name for the leaderboard, unique per title. */ + Name: string; + /** Maximum number of entries on this leaderboard */ + SizeLimit: number; + /** The version reset configuration for the leaderboard definition. */ + VersionConfiguration?: VersionConfiguration; + + } + + export interface CreateStatisticDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * [In Preview]: The list of statistic definition names whose scores must be aggregated towards this stat. If + * AggregationSource is specified, the entityType of this definition MUST be Title (making it a CommunityStat). Currently, + * only one aggregation source can be specified. + */ + AggregationSources?: string[]; + /** The columns for the statistic defining the aggregation method for each column. A maximum of 5 columns are allowed. */ + Columns?: StatisticColumn[]; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entity type allowed to have score(s) for this statistic. */ + EntityType?: string; + /** [In Preview]: Configurations for different Statistics events that can be emitted by the service. */ + EventEmissionConfig?: StatisticsEventEmissionConfig; + /** Name of the statistic. Must be less than 150 characters. Restricted to a-Z, 0-9, '(', ')', '_', '-' and '.'. */ + Name: string; + /** The version reset configuration for the statistic definition. */ + VersionConfiguration?: VersionConfiguration; + + } + + export interface DeleteLeaderboardDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the leaderboard definition to delete. */ + Name: string; + + } + + export interface DeleteLeaderboardEntriesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The unique Ids of the entries to delete from the leaderboard. */ + EntityIds?: string[]; + /** The name of the leaderboard. */ + Name: string; + + } + + export interface DeleteStatisticDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Name of the statistic to delete. */ + Name: string; + + } + + export interface DeleteStatisticsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** Collection of statistics to remove from this entity. */ + Statistics: StatisticDelete[]; + + } + + export interface DeleteStatisticsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The entity id and type. */ + Entity?: EntityKey; + + } + + export interface EmptyResponse extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface EntityKey { + /** Unique ID of the entity. */ + Id: string; + /** Entity type. See https://docs.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types */ + Type?: string; + + } + + export interface EntityLeaderboardEntry { + /** Entity's display name. */ + DisplayName?: string; + /** Entity identifier. */ + Entity?: EntityKey; + /** The time at which the last update to the entry was recorded on the server. */ + LastUpdated: string; + /** An opaque blob of data stored on the leaderboard entry. Note that the metadata is not used for ranking purposes. */ + Metadata?: string; + /** Position on the leaderboard. */ + Rank: number; + /** Scores for the entry. */ + Scores?: string[]; + + } + + export interface EntityStatistics { + /** The entity for which the statistics are returned. */ + EntityKey?: EntityKey; + /** The statistics for the given entity key. */ + Statistics?: EntityStatisticValue[]; + + } + + export interface EntityStatisticValue { + /** Metadata associated with the Statistic. */ + Metadata?: string; + /** Statistic name */ + Name?: string; + /** Statistic scores */ + Scores?: string[]; + /** Statistic version */ + Version: number; + + } + + type EventType = "None" + + | "Telemetry" + | "PlayStream"; + + type ExternalFriendSources = "None" + + | "Steam" + | "Facebook" + | "Xbox" + | "Psn" + | "All"; + + export interface GetEntityLeaderboardRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Name of the leaderboard. */ + LeaderboardName: string; + /** Maximum number of results to return from the leaderboard. Minimum 1, maximum 100. */ + PageSize: number; + /** Index position to start from. 1 is beginning of leaderboard. */ + StartingPosition?: number; + /** Optional version of the leaderboard, defaults to current version. */ + Version?: number; + + } + + export interface GetEntityLeaderboardResponse extends PlayFabModule.IPlayFabResultCommon { + /** Leaderboard columns describing the sort directions. */ + Columns?: LeaderboardColumn[]; + /** The number of entries on the leaderboard. */ + EntryCount: number; + /** The time the next scheduled reset will occur. Null if the leaderboard does not reset on a schedule. */ + NextReset?: string; + /** Individual entity rankings in the leaderboard, in sorted order by rank. */ + Rankings?: EntityLeaderboardEntry[]; + /** Version of the leaderboard being returned. */ + Version: number; + + } + + export interface GetFriendLeaderboardForEntityRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** + * Indicates which other platforms' friends should be included in the response. In HTTP, it is represented as a + * comma-separated list of platforms. + */ + ExternalFriendSources?: string; + /** Name of the leaderboard. */ + LeaderboardName: string; + /** Optional version of the leaderboard, defaults to current version. */ + Version?: number; + /** Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. */ + XboxToken?: string; + + } + + export interface GetLeaderboardAroundEntityRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** Name of the leaderboard. */ + LeaderboardName: string; + /** + * Number of surrounding entries to return (in addition to specified entity). In general, the number of ranks above and + * below will be split into half. For example, if the specified value is 10, 5 ranks above and 5 ranks below will be + * retrieved. However, the numbers will get skewed in either direction when the specified entity is towards the top or + * bottom of the leaderboard. Also, the number of entries returned can be lower than the value specified for entries at the + * bottom of the leaderboard. + */ + MaxSurroundingEntries: number; + /** Optional version of the leaderboard, defaults to current. */ + Version?: number; + + } + + export interface GetLeaderboardDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the leaderboard to retrieve the definition for. */ + Name: string; + + } + + export interface GetLeaderboardDefinitionResponse extends PlayFabModule.IPlayFabResultCommon { + /** Sort direction of the leaderboard columns, cannot be changed after creation. */ + Columns: LeaderboardColumn[]; + /** Created time, in UTC */ + Created: string; + /** + * The entity type being represented on the leaderboard. If it doesn't correspond to the PlayFab entity types, use + * 'external' as the type. + */ + EntityType: string; + /** [In Preview]: The configuration for the events emitted by this leaderboard. If not specified, no events will be emitted. */ + EventEmissionConfig?: LeaderboardEventEmissionConfig; + /** Last time, in UTC, leaderboard version was incremented. */ + LastResetTime?: string; + /** A name for the leaderboard, unique per title. */ + Name: string; + /** Maximum number of entries on this leaderboard */ + SizeLimit: number; + /** Latest Leaderboard version. */ + Version: number; + /** The version reset configuration for the leaderboard definition. */ + VersionConfiguration: VersionConfiguration; + + } + + export interface GetLeaderboardForEntitiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Collection of Entity IDs to include in the leaderboard. */ + EntityIds: string[]; + /** Name of the leaderboard. */ + LeaderboardName: string; + /** Optional version of the leaderboard, defaults to current. */ + Version?: number; + + } + + export interface GetStatisticDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Name of the statistic. Must be less than 150 characters. */ + Name: string; + + } + + export interface GetStatisticDefinitionResponse extends PlayFabModule.IPlayFabResultCommon { + /** The list of statistic definitions names this definition aggregates to. */ + AggregationDestinations?: string[]; + /** + * The list of statistic definitions names whose values must be aggregated towards this stat. If AggregationSource is + * specified, the entityType of this definition MUST be Title (making it a CommunityStat). Currently, only one aggregation + * source can be specified. + */ + AggregationSources?: string[]; + /** The columns for the statistic defining the aggregation method for each column. */ + Columns?: StatisticColumn[]; + /** Created time, in UTC */ + Created: string; + /** The entity type that can have this statistic. */ + EntityType?: string; + /** [In Preview]: Configurations for different Statistics events that can be emitted by the service. */ + EventEmissionConfig?: StatisticsEventEmissionConfig; + /** Last time, in UTC, statistic version was incremented. */ + LastResetTime?: string; + /** The list of leaderboards that are linked to this statistic definition. */ + LinkedLeaderboardNames?: string[]; + /** Name of the statistic. */ + Name?: string; + /** Statistic version. */ + Version: number; + /** The version reset configuration for the leaderboard definition. */ + VersionConfiguration?: VersionConfiguration; + + } + + export interface GetStatisticsForEntitiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Collection of Entity IDs to retrieve statistics for. */ + Entities: EntityKey[]; + /** The list of statistics to return for the user. If set to null, the current version of all statistics are returned. */ + StatisticNames?: string[]; + + } + + export interface GetStatisticsForEntitiesResponse extends PlayFabModule.IPlayFabResultCommon { + /** A mapping of statistic name to the columns defined in the corresponding definition. */ + ColumnDetails?: { [key: string]: StatisticColumnCollection }; + /** List of entities mapped to their statistics. Only the latest version of a statistic is returned. */ + EntitiesStatistics?: EntityStatistics[]; + + } + + export interface GetStatisticsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** The list of statistics to return for the user. If set to null, the current version of all statistics are returned. */ + StatisticNames?: string[]; + + } + + export interface GetStatisticsResponse extends PlayFabModule.IPlayFabResultCommon { + /** A mapping of statistic name to the columns defined in the corresponding definition. */ + ColumnDetails?: { [key: string]: StatisticColumnCollection }; + /** The entity id and type. */ + Entity?: EntityKey; + /** List of statistics keyed by Name. Only the latest version of a statistic is returned. */ + Statistics?: { [key: string]: EntityStatisticValue }; + + } + + export interface IncrementLeaderboardVersionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the leaderboard to increment the version for. */ + Name: string; + + } + + export interface IncrementLeaderboardVersionResponse extends PlayFabModule.IPlayFabResultCommon { + /** New Leaderboard version. */ + Version: number; + + } + + export interface IncrementStatisticVersionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Name of the statistic to increment the version of. */ + Name: string; + + } + + export interface IncrementStatisticVersionResponse extends PlayFabModule.IPlayFabResultCommon { + /** New statistic version. */ + Version: number; + + } + + export interface LeaderboardColumn { + /** + * If the value for this column is sourced from a statistic, details of the linked column. Null if the leaderboard is not + * linked. + */ + LinkedStatisticColumn?: LinkedStatisticColumn; + /** A name for the leaderboard column, unique per leaderboard definition. */ + Name: string; + /** The sort direction for this column. */ + SortDirection: string; + + } + + export interface LeaderboardDefinition { + /** Sort direction of the leaderboard columns, cannot be changed after creation. */ + Columns: LeaderboardColumn[]; + /** Created time, in UTC */ + Created: string; + /** + * The entity type being represented on the leaderboard. If it doesn't correspond to the PlayFab entity types, use + * 'external' as the type. + */ + EntityType: string; + /** [In Preview]: The configuration for the events emitted by this leaderboard. If not specified, no events will be emitted. */ + EventEmissionConfig?: LeaderboardEventEmissionConfig; + /** Last time, in UTC, leaderboard version was incremented. */ + LastResetTime?: string; + /** A name for the leaderboard, unique per title. */ + Name: string; + /** Maximum number of entries on this leaderboard */ + SizeLimit: number; + /** Latest Leaderboard version. */ + Version: number; + /** The version reset configuration for the leaderboard definition. */ + VersionConfiguration: VersionConfiguration; + + } + + export interface LeaderboardEntityRankOnVersionEndConfig { + /** The type of event to emit when the leaderboard version end. */ + EventType: string; + /** The maximum number of entity to return on leaderboard version end. Range is 1 to 1000. */ + RankLimit: number; + + } + + export interface LeaderboardEntryUpdate { + /** The unique Id for the entry. If using PlayFab Entities, this would be the entityId of the entity. */ + EntityId: string; + /** Arbitrary metadata to store along side the leaderboard entry, will be returned by all Leaderboard APIs. */ + Metadata?: string; + /** + * The scores for the leaderboard. The number of values provided here must match the number of columns in the Leaderboard + * definition. + */ + Scores?: string[]; + + } + + export interface LeaderboardEventEmissionConfig { + /** This event emits the top ranks of the leaderboard when the leaderboard version end. */ + EntityRankOnVersionEndConfig?: LeaderboardEntityRankOnVersionEndConfig; + /** This event is emitted when the leaderboard version end. */ + VersionEndConfig?: LeaderboardVersionEndConfig; + + } + + type LeaderboardSortDirection = "Descending" + + | "Ascending"; + + export interface LeaderboardVersionEndConfig { + /** The type of event to emit when the leaderboard version end. */ + EventType: string; + + } + + export interface LinkedStatisticColumn { + /** The name of the statistic column that this leaderboard column is sourced from. */ + LinkedStatisticColumnName: string; + /** The name of the statistic. */ + LinkedStatisticName: string; + + } + + export interface ListLeaderboardDefinitionsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The page size for the request. */ + PageSize?: number; + /** The skip token for the paged request. */ + SkipToken?: string; + + } + + export interface ListLeaderboardDefinitionsResponse extends PlayFabModule.IPlayFabResultCommon { + /** List of leaderboard definitions for the title. */ + LeaderboardDefinitions?: LeaderboardDefinition[]; + /** The page size on the response. */ + PageSize: number; + /** The skip token for the paged response. */ + SkipToken?: string; + + } + + export interface ListStatisticDefinitionsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The page size for the request. */ + PageSize?: number; + /** The skip token for the paged request. */ + SkipToken?: string; + + } + + export interface ListStatisticDefinitionsResponse extends PlayFabModule.IPlayFabResultCommon { + /** The page size on the response. */ + PageSize: number; + /** The skip token for the paged response. */ + SkipToken?: string; + /** List of statistic definitions for the title. */ + StatisticDefinitions?: StatisticDefinition[]; + + } + + type ResetInterval = "Manual" + + | "Hour" + | "Day" + | "Week" + | "Month"; + + type StatisticAggregationMethod = "Last" + + | "Min" + | "Max" + | "Sum"; + + export interface StatisticColumn { + /** Aggregation method for calculating new value of a statistic. */ + AggregationMethod: string; + /** Name of the statistic column, as originally configured. */ + Name: string; + + } + + export interface StatisticColumnCollection { + /** Columns for the statistic defining the aggregation method for each column. */ + Columns?: StatisticColumn[]; + + } + + export interface StatisticDefinition { + /** The list of statistic definitions names this definition aggregates to. */ + AggregationDestinations?: string[]; + /** + * The list of statistic definitions names whose values must be aggregated towards this stat. If AggregationSource is + * specified, the entityType of this definition MUST be Title (making it a CommunityStat). Currently, only one aggregation + * source can be specified. + */ + AggregationSources?: string[]; + /** The columns for the statistic defining the aggregation method for each column. */ + Columns?: StatisticColumn[]; + /** Created time, in UTC */ + Created: string; + /** The entity type that can have this statistic. */ + EntityType?: string; + /** [In Preview]: Configurations for different Statistics events that can be emitted by the service. */ + EventEmissionConfig?: StatisticsEventEmissionConfig; + /** Last time, in UTC, statistic version was incremented. */ + LastResetTime?: string; + /** The list of leaderboards that are linked to this statistic definition. */ + LinkedLeaderboardNames?: string[]; + /** Name of the statistic. */ + Name?: string; + /** Statistic version. */ + Version: number; + /** The version reset configuration for the leaderboard definition. */ + VersionConfiguration?: VersionConfiguration; + + } + + export interface StatisticDelete { + /** Name of the statistic, as originally configured. */ + Name: string; + + } + + export interface StatisticsEventEmissionConfig { + /** Emitted when statistics are updated. */ + UpdateEventConfig?: StatisticsUpdateEventConfig; + + } + + export interface StatisticsUpdateEventConfig { + /** The event type to emit when statistics are updated. */ + EventType: string; + + } + + export interface StatisticUpdate { + /** + * A list of entities to which the statistic update must be aggregated to, in addition to the entity being updated. For + * example, for Group stats where the stat value is aggregated based on the group members, this would refer to the Group + * entity. For a community stat that's aggregated at the Title, it is not required to populate this property (Title is the + * default). + */ + AggregationTargetEntityKeys?: EntityKey[]; + /** Arbitrary metadata to store along side the statistic, will be returned by all Leaderboard APIs. */ + Metadata?: string; + /** Name of the statistic, as originally configured. */ + Name: string; + /** + * Statistic scores for the entity. This will be used in accordance with the aggregation method configured for the + * statistics.The maximum value allowed for each individual score is 9223372036854775807. The minimum value for each + * individual score is -9223372036854775807The values are formatted as strings to avoid interop issues with client + * libraries unable to handle 64bit integers. + */ + Scores?: string[]; + /** Optional field to indicate the version of the statistic to set. When empty defaults to the statistic's current version. */ + Version?: number; + + } + + export interface UnlinkAggregationSourceFromStatisticRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the statistic to unlink. */ + Name: string; + /** The name of the aggregation source statistic to unlink. */ + SourceStatisticName: string; + + } + + export interface UnlinkLeaderboardFromStatisticRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The name of the leaderboard definition to unlink. */ + Name: string; + /** The name of the statistic definition to unlink. */ + StatisticName: string; + + } + + export interface UpdateLeaderboardDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** [In Preview]: The configuration for the events emitted by this leaderboard. If not specified, no events will be emitted. */ + EventEmissionConfig?: LeaderboardEventEmissionConfig; + /** The name of the leaderboard to update the definition for. */ + Name: string; + /** Maximum number of entries on this leaderboard */ + SizeLimit?: number; + /** The version reset configuration for the leaderboard definition. */ + VersionConfiguration?: VersionConfiguration; + + } + + export interface UpdateLeaderboardEntriesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The entries to add or update on the leaderboard. */ + Entries?: LeaderboardEntryUpdate[]; + /** The name of the leaderboard. */ + LeaderboardName: string; + + } + + export interface UpdateStatisticDefinitionRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** [In Preview]: Configurations for different Statistics events that can be emitted by the service. */ + EventEmissionConfig?: StatisticsEventEmissionConfig; + /** Name of the statistic. Must be less than 150 characters. Restricted to a-Z, 0-9, '(', ')', '_', '-' and '.'. */ + Name: string; + /** The version reset configuration for the statistic definition. */ + VersionConfiguration?: VersionConfiguration; + + } + + export interface UpdateStatisticsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The optional entity to perform this action on. Defaults to the currently logged in entity. */ + Entity?: EntityKey; + /** Collection of statistics to update, maximum 50. */ + Statistics: StatisticUpdate[]; + /** Optional transactionId of this update which can be used to ensure idempotence. */ + TransactionId?: string; + + } + + export interface UpdateStatisticsResponse extends PlayFabModule.IPlayFabResultCommon { + /** A mapping of statistic name to the columns defined in the corresponding definition. */ + ColumnDetails?: { [key: string]: StatisticColumnCollection }; + /** The entity id and type. */ + Entity?: EntityKey; + /** Updated entity profile statistics. */ + Statistics?: { [key: string]: EntityStatisticValue }; + + } + + export interface VersionConfiguration { + /** The maximum number of versions of this leaderboard/statistic that can be queried. */ + MaxQueryableVersions: number; + /** + * Reset interval that statistics or leaderboards will reset on. When using Manual intervalthe reset can only be increased + * by calling the Increase version API. When using Hour interval the resetwill occur at the start of the next hour UTC + * time. When using Day interval the reset will occur at thestart of the next day in UTC time. When using the Week interval + * the reset will occur at the start ofthe next Monday in UTC time. When using Month interval the reset will occur at the + * start of the nextmonth in UTC time. + */ + ResetInterval: string; + + } + + +} diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabServerApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabServerApi.d.ts index 622b4338..47884a40 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabServerApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabServerApi.d.ts @@ -5,28 +5,34 @@ declare module PlayFabServerModule { ForgetAllCredentials(): void; /** - * Increments the character's balance of the specified virtual currency by the stated amount + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Increments the character's balance of the specified virtual currency by the stated amount * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/addcharactervirtualcurrency */ - AddCharacterVirtualCurrency(request: PlayFabServerModels.AddCharacterVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddCharacterVirtualCurrency(request: PlayFabServerModels.AddCharacterVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds the Friend user to the friendlist of the user with PlayFabId. At least one of * FriendPlayFabId,FriendUsername,FriendEmail, or FriendTitleDisplayName should be initialized. * https://docs.microsoft.com/rest/api/playfab/server/friend-list-management/addfriend */ - AddFriend(request: PlayFabServerModels.AddFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddFriend(request: PlayFabServerModels.AddFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds the specified generic service identifier to the player's PlayFab account. This is designed to allow for a PlayFab * ID lookup of any arbitrary service identifier a title wants to add. This identifier should never be used as * authentication credentials, as the intent is that it is easily accessible by other players. * https://docs.microsoft.com/rest/api/playfab/server/account-management/addgenericid */ - AddGenericID(request: PlayFabServerModels.AddGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddGenericID(request: PlayFabServerModels.AddGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Adds or updates a contact email to the specified player's profile. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/addorupdatecontactemail + */ + AddOrUpdateContactEmail(request: PlayFabServerModels.AddOrUpdateContactEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds a given tag to a player profile. The tag's namespace is automatically generated based on the source of the tag. * https://docs.microsoft.com/rest/api/playfab/server/playstream/addplayertag */ - AddPlayerTag(request: PlayFabServerModels.AddPlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddPlayerTag(request: PlayFabServerModels.AddPlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds users to the set of those able to update both the shared data, as well as the set of users in the group. Only users * in the group (and the server) can add new members. Shared Groups are designed for sharing data between a very small @@ -34,32 +40,35 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/server/shared-group-data/addsharedgroupmembers */ - AddSharedGroupMembers(request: PlayFabServerModels.AddSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddSharedGroupMembers(request: PlayFabServerModels.AddSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Increments the user's balance of the specified virtual currency by the stated amount + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Increments the user's balance of the specified virtual currency by the stated amount * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/adduservirtualcurrency */ - AddUserVirtualCurrency(request: PlayFabServerModels.AddUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AddUserVirtualCurrency(request: PlayFabServerModels.AddUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Validated a client's session ticket, and if successful, returns details for that user * https://docs.microsoft.com/rest/api/playfab/server/authentication/authenticatesessionticket */ - AuthenticateSessionTicket(request: PlayFabServerModels.AuthenticateSessionTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AuthenticateSessionTicket(request: PlayFabServerModels.AuthenticateSessionTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Awards the specified users the specified Steam achievements * https://docs.microsoft.com/rest/api/playfab/server/platform-specific-methods/awardsteamachievement */ - AwardSteamAchievement(request: PlayFabServerModels.AwardSteamAchievementRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + AwardSteamAchievement(request: PlayFabServerModels.AwardSteamAchievementRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Bans users by PlayFab ID with optional IP address, or MAC address for the provided game. + * Bans users by PlayFab ID with optional IP address for the provided game. * https://docs.microsoft.com/rest/api/playfab/server/account-management/banusers */ - BanUsers(request: PlayFabServerModels.BanUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + BanUsers(request: PlayFabServerModels.BanUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Consume uses of a consumable item. When all uses are consumed, it will be removed from the player's inventory. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Consume uses of a consumable item. When all uses are consumed, it will be removed from the player's + * inventory. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/consumeitem */ - ConsumeItem(request: PlayFabServerModels.ConsumeItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ConsumeItem(request: PlayFabServerModels.ConsumeItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Requests the creation of a shared group object, containing key/value pairs which may be updated by all members of the * group. When created by a server, the group will initially have no members. Shared Groups are designed for sharing data @@ -67,92 +76,105 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/server/shared-group-data/createsharedgroup */ - CreateSharedGroup(request: PlayFabServerModels.CreateSharedGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + CreateSharedGroup(request: PlayFabServerModels.CreateSharedGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes the specific character ID from the specified user. * https://docs.microsoft.com/rest/api/playfab/server/characters/deletecharacterfromuser */ - DeleteCharacterFromUser(request: PlayFabServerModels.DeleteCharacterFromUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteCharacterFromUser(request: PlayFabServerModels.DeleteCharacterFromUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes a user's player account from a title and deletes all associated data * https://docs.microsoft.com/rest/api/playfab/server/account-management/deleteplayer */ - DeletePlayer(request: PlayFabServerModels.DeletePlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeletePlayer(request: PlayFabServerModels.DeletePlayerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Deletes title-specific custom properties for a player + * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/deleteplayercustomproperties + */ + DeletePlayerCustomProperties(request: PlayFabServerModels.DeletePlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes push notification template for title * https://docs.microsoft.com/rest/api/playfab/server/account-management/deletepushnotificationtemplate */ - DeletePushNotificationTemplate(request: PlayFabServerModels.DeletePushNotificationTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeletePushNotificationTemplate(request: PlayFabServerModels.DeletePushNotificationTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Deletes a shared group, freeing up the shared group ID to be reused for a new group. Shared Groups are designed for * sharing data between a very small number of players, please see our guide: * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/server/shared-group-data/deletesharedgroup */ - DeleteSharedGroup(request: PlayFabServerModels.DeleteSharedGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + DeleteSharedGroup(request: PlayFabServerModels.DeleteSharedGroupRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Inform the matchmaker that a Game Server Instance is removed. - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/deregistergame - */ - DeregisterGame(request: PlayFabServerModels.DeregisterGameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Returns the result of an evaluation of a Random Result Table - the ItemId from the game Catalog which would have been - * added to the player inventory, if the Random Result Table were added via a Bundle or a call to UnlockContainer. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Returns the result of an evaluation of a Random Result Table - the ItemId from the game Catalog which would + * have been added to the player inventory, if the Random Result Table were added via a Bundle or a call to + * UnlockContainer. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/evaluaterandomresulttable */ - EvaluateRandomResultTable(request: PlayFabServerModels.EvaluateRandomResultTableRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + EvaluateRandomResultTable(request: PlayFabServerModels.EvaluateRandomResultTableRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Executes a CloudScript function, with the 'currentPlayerId' variable set to the specified PlayFabId parameter value. + * Executes a CloudScript function, with the 'currentPlayerId' set to the PlayFab ID of the authenticated player. The + * PlayFab ID is the entity ID of the player's master_player_account entity. * https://docs.microsoft.com/rest/api/playfab/server/server-side-cloud-script/executecloudscript */ - ExecuteCloudScript(request: PlayFabServerModels.ExecuteCloudScriptServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ExecuteCloudScript(request: PlayFabServerModels.ExecuteCloudScriptServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Starts an export for the player profiles in a segment. This API creates a snapshot of all the player profiles which + * match the segment definition at the time of the API call. Profiles which change while an export is in progress will not + * be reflected in the results. + * https://docs.microsoft.com/rest/api/playfab/server/playstream/exportplayersinsegment + */ + ExportPlayersInSegment(request: PlayFabServerModels.ExportPlayersInSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves an array of player segment definitions. Results from this can be used in subsequent API calls such as - * GetPlayersInSegment which requires a Segment ID. While segment names can change the ID for that segment will not change. + * ExportPlayersInSegment which requires a Segment ID. While segment names can change the ID for that segment will not + * change. * https://docs.microsoft.com/rest/api/playfab/server/playstream/getallsegments */ - GetAllSegments(request: PlayFabServerModels.GetAllSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetAllSegments(request: PlayFabServerModels.GetAllSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Lists all of the characters that belong to a specific user. CharacterIds are not globally unique; characterId must be * evaluated with the parent PlayFabId to guarantee uniqueness. * https://docs.microsoft.com/rest/api/playfab/server/characters/getalluserscharacters */ - GetAllUsersCharacters(request: PlayFabServerModels.ListUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetAllUsersCharacters(request: PlayFabServerModels.ListUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the specified version of the title's catalog of virtual goods, including all defined properties + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the specified version of the title's catalog of virtual goods, including all defined properties * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/getcatalogitems */ - GetCatalogItems(request: PlayFabServerModels.GetCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCatalogItems(request: PlayFabServerModels.GetCatalogItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/server/character-data/getcharacterdata */ - GetCharacterData(request: PlayFabServerModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterData(request: PlayFabServerModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user's character which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/server/character-data/getcharacterinternaldata */ - GetCharacterInternalData(request: PlayFabServerModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterInternalData(request: PlayFabServerModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the specified character's current inventory of virtual goods + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the specified character's current inventory of virtual goods * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/getcharacterinventory */ - GetCharacterInventory(request: PlayFabServerModels.GetCharacterInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterInventory(request: PlayFabServerModels.GetCharacterInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked characters for the given statistic, starting from the indicated point in the leaderboard * https://docs.microsoft.com/rest/api/playfab/server/characters/getcharacterleaderboard */ - GetCharacterLeaderboard(request: PlayFabServerModels.GetCharacterLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterLeaderboard(request: PlayFabServerModels.GetCharacterLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user's character which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/server/character-data/getcharacterreadonlydata */ - GetCharacterReadOnlyData(request: PlayFabServerModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterReadOnlyData(request: PlayFabServerModels.GetCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the details of all title-specific statistics for the specific character * https://docs.microsoft.com/rest/api/playfab/server/characters/getcharacterstatistics */ - GetCharacterStatistics(request: PlayFabServerModels.GetCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetCharacterStatistics(request: PlayFabServerModels.GetCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * This API retrieves a pre-signed URL for accessing a content file for the title. A subsequent HTTP GET to the returned * URL will attempt to download the content. A HEAD query to the returned URL will attempt to retrieve the metadata of the @@ -162,331 +184,451 @@ declare module PlayFabServerModule { * please be aware that the Content service is specifically PlayFab's CDN offering, for which standard CDN rates apply. * https://docs.microsoft.com/rest/api/playfab/server/content/getcontentdownloadurl */ - GetContentDownloadUrl(request: PlayFabServerModels.GetContentDownloadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetContentDownloadUrl(request: PlayFabServerModels.GetContentDownloadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked friends of the given player for the given statistic, starting from the indicated point in the * leaderboard * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getfriendleaderboard */ - GetFriendLeaderboard(request: PlayFabServerModels.GetFriendLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetFriendLeaderboard(request: PlayFabServerModels.GetFriendLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the current friends for the user with PlayFabId, constrained to users who have PlayFab accounts. Friends from * linked accounts (Facebook, Steam) are also included. You may optionally exclude some linked services' friends. * https://docs.microsoft.com/rest/api/playfab/server/friend-list-management/getfriendslist */ - GetFriendsList(request: PlayFabServerModels.GetFriendsListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetFriendsList(request: PlayFabServerModels.GetFriendsListRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked users for the given statistic, starting from the indicated point in the leaderboard * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getleaderboard */ - GetLeaderboard(request: PlayFabServerModels.GetLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboard(request: PlayFabServerModels.GetLeaderboardRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked characters for the given statistic, centered on the requested user * https://docs.microsoft.com/rest/api/playfab/server/characters/getleaderboardaroundcharacter */ - GetLeaderboardAroundCharacter(request: PlayFabServerModels.GetLeaderboardAroundCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboardAroundCharacter(request: PlayFabServerModels.GetLeaderboardAroundCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of ranked users for the given statistic, centered on the currently signed-in user * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getleaderboardarounduser */ - GetLeaderboardAroundUser(request: PlayFabServerModels.GetLeaderboardAroundUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboardAroundUser(request: PlayFabServerModels.GetLeaderboardAroundUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a list of all of the user's characters for the given statistic. * https://docs.microsoft.com/rest/api/playfab/server/characters/getleaderboardforusercharacters */ - GetLeaderboardForUserCharacters(request: PlayFabServerModels.GetLeaderboardForUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetLeaderboardForUserCharacters(request: PlayFabServerModels.GetLeaderboardForUsersCharactersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Returns whatever info is requested in the response for the user. Note that PII (like email address, facebook id) may be * returned. All parameters default to false. * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getplayercombinedinfo */ - GetPlayerCombinedInfo(request: PlayFabServerModels.GetPlayerCombinedInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerCombinedInfo(request: PlayFabServerModels.GetPlayerCombinedInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves a title-specific custom property value for a player. + * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getplayercustomproperty + */ + GetPlayerCustomProperty(request: PlayFabServerModels.GetPlayerCustomPropertyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the player's profile * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayerprofile */ - GetPlayerProfile(request: PlayFabServerModels.GetPlayerProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerProfile(request: PlayFabServerModels.GetPlayerProfileRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * List all segments that a player currently belongs to at this moment in time. * https://docs.microsoft.com/rest/api/playfab/server/playstream/getplayersegments */ - GetPlayerSegments(request: PlayFabServerModels.GetPlayersSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Allows for paging through all players in a given segment. This API creates a snapshot of all player profiles that match - * the segment definition at the time of its creation and lives through the Total Seconds to Live, refreshing its life span - * on each subsequent use of the Continuation Token. Profiles that change during the course of paging will not be reflected - * in the results. AB Test segments are currently not supported by this operation. NOTE: This API is limited to being - * called 30 times in one minute. You will be returned an error if you exceed this threshold. - * https://docs.microsoft.com/rest/api/playfab/server/playstream/getplayersinsegment - */ - GetPlayersInSegment(request: PlayFabServerModels.GetPlayersInSegmentRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerSegments(request: PlayFabServerModels.GetPlayersSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the current version and values for the indicated statistics, for the local player. * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getplayerstatistics */ - GetPlayerStatistics(request: PlayFabServerModels.GetPlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerStatistics(request: PlayFabServerModels.GetPlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the information on the available versions of the specified statistic. * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getplayerstatisticversions */ - GetPlayerStatisticVersions(request: PlayFabServerModels.GetPlayerStatisticVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerStatisticVersions(request: PlayFabServerModels.GetPlayerStatisticVersionsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Get all tags with a given Namespace (optional) from a player profile. * https://docs.microsoft.com/rest/api/playfab/server/playstream/getplayertags */ - GetPlayerTags(request: PlayFabServerModels.GetPlayerTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayerTags(request: PlayFabServerModels.GetPlayerTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Battle.net account identifiers. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfrombattlenetaccountids + */ + GetPlayFabIDsFromBattleNetAccountIds(request: PlayFabServerModels.GetPlayFabIDsFromBattleNetAccountIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Facebook identifiers. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromfacebookids */ - GetPlayFabIDsFromFacebookIDs(request: PlayFabServerModels.GetPlayFabIDsFromFacebookIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromFacebookIDs(request: PlayFabServerModels.GetPlayFabIDsFromFacebookIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Facebook Instant Games identifiers. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromfacebookinstantgamesids */ - GetPlayFabIDsFromFacebookInstantGamesIds(request: PlayFabServerModels.GetPlayFabIDsFromFacebookInstantGamesIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromFacebookInstantGamesIds(request: PlayFabServerModels.GetPlayFabIDsFromFacebookInstantGamesIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of generic service identifiers. A generic identifier is the * service name plus the service-specific ID for the player, as specified by the title when the generic identifier was * added to the player account. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromgenericids */ - GetPlayFabIDsFromGenericIDs(request: PlayFabServerModels.GetPlayFabIDsFromGenericIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromGenericIDs(request: PlayFabServerModels.GetPlayFabIDsFromGenericIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Nintendo Service Account identifiers. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromnintendoserviceaccountids + */ + GetPlayFabIDsFromNintendoServiceAccountIds(request: PlayFabServerModels.GetPlayFabIDsFromNintendoServiceAccountIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Nintendo Switch Device identifiers. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromnintendoswitchdeviceids */ - GetPlayFabIDsFromNintendoSwitchDeviceIds(request: PlayFabServerModels.GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromNintendoSwitchDeviceIds(request: PlayFabServerModels.GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the unique PlayFab identifiers for the given set of PlayStation Network identifiers. + * Retrieves the unique PlayFab identifiers for the given set of OpenId subject identifiers. A OpenId subject identifier is + * the OpenId issuer plus the OpenId subject for the player, as specified by the title when the OpenId identifier was added + * to the player account. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromopenidsubjectidentifiers + */ + GetPlayFabIDsFromOpenIdSubjectIdentifiers(request: PlayFabServerModels.GetPlayFabIDsFromOpenIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of PlayStation :tm: Network identifiers. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfrompsnaccountids */ - GetPlayFabIDsFromPSNAccountIDs(request: PlayFabServerModels.GetPlayFabIDsFromPSNAccountIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromPSNAccountIDs(request: PlayFabServerModels.GetPlayFabIDsFromPSNAccountIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of PlayStation :tm: Network identifiers. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfrompsnonlineids + */ + GetPlayFabIDsFromPSNOnlineIDs(request: PlayFabServerModels.GetPlayFabIDsFromPSNOnlineIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the associated PlayFab account identifiers for the given set of server custom player identifiers. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromservercustomids + */ + GetPlayFabIDsFromServerCustomIDs(request: PlayFabServerModels.GetPlayFabIDsFromServerCustomIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of Steam identifiers. The Steam identifiers are the profile * IDs for the user accounts, available as SteamId in the Steamworks Community API calls. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromsteamids */ - GetPlayFabIDsFromSteamIDs(request: PlayFabServerModels.GetPlayFabIDsFromSteamIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromSteamIDs(request: PlayFabServerModels.GetPlayFabIDsFromSteamIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Steam identifiers. The Steam identifiers are persona + * names. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromsteamnames + */ + GetPlayFabIDsFromSteamNames(request: PlayFabServerModels.GetPlayFabIDsFromSteamNamesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the unique PlayFab identifiers for the given set of Twitch identifiers. The Twitch identifiers are the IDs for + * the user accounts, available as "_id" from the Twitch API methods (ex: + * https://github.com/justintv/Twitch-API/blob/master/v3_resources/users.md#get-usersuser). + * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromtwitchids + */ + GetPlayFabIDsFromTwitchIDs(request: PlayFabServerModels.GetPlayFabIDsFromTwitchIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the unique PlayFab identifiers for the given set of XboxLive identifiers. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromxboxliveids */ - GetPlayFabIDsFromXboxLiveIDs(request: PlayFabServerModels.GetPlayFabIDsFromXboxLiveIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPlayFabIDsFromXboxLiveIDs(request: PlayFabServerModels.GetPlayFabIDsFromXboxLiveIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom publisher settings * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/getpublisherdata */ - GetPublisherData(request: PlayFabServerModels.GetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetPublisherData(request: PlayFabServerModels.GetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the configuration information for the specified random results tables for the title, including all ItemId - * values and weights + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the configuration information for the specified random results tables for the title, including all + * ItemId values and weights * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/getrandomresulttables */ - GetRandomResultTables(request: PlayFabServerModels.GetRandomResultTablesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetRandomResultTables(request: PlayFabServerModels.GetRandomResultTablesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves the result of an export started by ExportPlayersInSegment API. If the ExportPlayersInSegment is successful and + * complete, this API returns the IndexUrl from which the index file can be downloaded. The index file has a list of urls + * from which the files containing the player profile data can be downloaded. Otherwise, it returns the current 'State' of + * the export + * https://docs.microsoft.com/rest/api/playfab/server/playstream/getsegmentexport + */ + GetSegmentExport(request: PlayFabServerModels.GetPlayersInSegmentExportRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Returns the total number of players in a given segment. + * https://docs.microsoft.com/rest/api/playfab/server/playstream/getsegmentplayercount + */ + GetSegmentPlayerCount(request: PlayFabServerModels.GetSegmentPlayerCountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the associated PlayFab account identifiers for the given set of server custom identifiers. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getservercustomidsfromplayfabids */ - GetServerCustomIDsFromPlayFabIDs(request: PlayFabServerModels.GetServerCustomIDsFromPlayFabIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetServerCustomIDsFromPlayFabIDs(request: PlayFabServerModels.GetServerCustomIDsFromPlayFabIDsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves data stored in a shared group object, as well as the list of members in the group. The server can access all * public and private group data. Shared Groups are designed for sharing data between a very small number of players, * please see our guide: https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/server/shared-group-data/getsharedgroupdata */ - GetSharedGroupData(request: PlayFabServerModels.GetSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetSharedGroupData(request: PlayFabServerModels.GetSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the set of items defined for the specified store, including all prices defined, for the specified player + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the set of items defined for the specified store, including all prices defined, for the specified + * player * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/getstoreitems */ - GetStoreItems(request: PlayFabServerModels.GetStoreItemsServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetStoreItems(request: PlayFabServerModels.GetStoreItemsServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the current server time * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/gettime */ - GetTime(request: PlayFabServerModels.GetTimeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTime(request: PlayFabServerModels.GetTimeRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom title settings * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/gettitledata */ - GetTitleData(request: PlayFabServerModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleData(request: PlayFabServerModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the key-value store of custom internal title settings * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/gettitleinternaldata */ - GetTitleInternalData(request: PlayFabServerModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleInternalData(request: PlayFabServerModels.GetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title news feed, as configured in the developer portal * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/gettitlenews */ - GetTitleNews(request: PlayFabServerModels.GetTitleNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetTitleNews(request: PlayFabServerModels.GetTitleNewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the relevant details for a specified user * https://docs.microsoft.com/rest/api/playfab/server/account-management/getuseraccountinfo */ - GetUserAccountInfo(request: PlayFabServerModels.GetUserAccountInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserAccountInfo(request: PlayFabServerModels.GetUserAccountInfoRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets all bans for a user. * https://docs.microsoft.com/rest/api/playfab/server/account-management/getuserbans */ - GetUserBans(request: PlayFabServerModels.GetUserBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserBans(request: PlayFabServerModels.GetUserBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserdata */ - GetUserData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserinternaldata */ - GetUserInternalData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserInternalData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves the specified user's current inventory of virtual goods + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Retrieves the specified user's current inventory of virtual goods * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/getuserinventory */ - GetUserInventory(request: PlayFabServerModels.GetUserInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserInventory(request: PlayFabServerModels.GetUserInventoryRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserpublisherdata */ - GetUserPublisherData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserpublisherinternaldata */ - GetUserPublisherInternalData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherInternalData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the publisher-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserpublisherreadonlydata */ - GetUserPublisherReadOnlyData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserPublisherReadOnlyData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves the title-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/getuserreadonlydata */ - GetUserReadOnlyData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GetUserReadOnlyData(request: PlayFabServerModels.GetUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Grants the specified character type to the user. CharacterIds are not globally unique; characterId must be evaluated * with the parent PlayFabId to guarantee uniqueness. * https://docs.microsoft.com/rest/api/playfab/server/characters/grantcharactertouser */ - GrantCharacterToUser(request: PlayFabServerModels.GrantCharacterToUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GrantCharacterToUser(request: PlayFabServerModels.GrantCharacterToUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds the specified items to the specified character's inventory + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Adds the specified items to the specified character's inventory * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/grantitemstocharacter */ - GrantItemsToCharacter(request: PlayFabServerModels.GrantItemsToCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GrantItemsToCharacter(request: PlayFabServerModels.GrantItemsToCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds the specified items to the specified user's inventory + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Adds the specified items to the specified user's inventory * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/grantitemstouser */ - GrantItemsToUser(request: PlayFabServerModels.GrantItemsToUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GrantItemsToUser(request: PlayFabServerModels.GrantItemsToUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds the specified items to the specified user inventories + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Adds the specified items to the specified user inventories * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/grantitemstousers */ - GrantItemsToUsers(request: PlayFabServerModels.GrantItemsToUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + GrantItemsToUsers(request: PlayFabServerModels.GrantItemsToUsersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the Battle.net account associated with the token to the user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linkbattlenetaccount + */ + LinkBattleNetAccount(request: PlayFabServerModels.LinkBattleNetAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Links the PlayStation Network account associated with the provided access code to the user's PlayFab account + * Links the Nintendo account associated with the token to the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linknintendoserviceaccount + */ + LinkNintendoServiceAccount(request: PlayFabServerModels.LinkNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the Nintendo account associated with the Nintendo Service Account subject or id to the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linknintendoserviceaccountsubject + */ + LinkNintendoServiceAccountSubject(request: PlayFabServerModels.LinkNintendoServiceAccountSubjectRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the NintendoSwitchDeviceId to the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linknintendoswitchdeviceid + */ + LinkNintendoSwitchDeviceId(request: PlayFabServerModels.LinkNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the PlayStation :tm: Network account associated with the provided access code to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/server/account-management/linkpsnaccount */ - LinkPSNAccount(request: PlayFabServerModels.LinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkPSNAccount(request: PlayFabServerModels.LinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the PlayStation :tm: Network account associated with the provided user id to the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linkpsnid + */ + LinkPSNId(request: PlayFabServerModels.LinkPSNIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the custom server identifier, generated by the title, to the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/server/account-management/linkservercustomid */ - LinkServerCustomId(request: PlayFabServerModels.LinkServerCustomIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkServerCustomId(request: PlayFabServerModels.LinkServerCustomIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the Steam account associated with the provided Steam ID to the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linksteamid + */ + LinkSteamId(request: PlayFabServerModels.LinkSteamIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the Twitch account associated with the token to the user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linktwitchaccount + */ + LinkTwitchAccount(request: PlayFabServerModels.LinkTwitchAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Links the Xbox Live account associated with the provided access code to the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/server/account-management/linkxboxaccount */ - LinkXboxAccount(request: PlayFabServerModels.LinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LinkXboxAccount(request: PlayFabServerModels.LinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Links the Xbox Live account associated with the provided Xbox ID and Sandbox to the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/linkxboxid + */ + LinkXboxId(request: PlayFabServerModels.LinkXboxIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Retrieves title-specific custom property values for a player. + * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/listplayercustomproperties + */ + ListPlayerCustomProperties(request: PlayFabServerModels.ListPlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Signs the user in using the Android device identifier, returning a session identifier that can subsequently be used for + * API calls which require an authenticated user + * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithandroiddeviceid + */ + LoginWithAndroidDeviceID(request: PlayFabServerModels.LoginWithAndroidDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Sign in the user with a Battle.net identity token + * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithbattlenet + */ + LoginWithBattleNet(request: PlayFabServerModels.LoginWithBattleNetRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Signs the user in using a custom unique identifier generated by the title, returning a session identifier that can + * subsequently be used for API calls which require an authenticated user + * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithcustomid + */ + LoginWithCustomID(request: PlayFabServerModels.LoginWithCustomIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Signs the user in using the iOS device identifier, returning a session identifier that can subsequently be used for API + * calls which require an authenticated user + * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithiosdeviceid + */ + LoginWithIOSDeviceID(request: PlayFabServerModels.LoginWithIOSDeviceIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Signs the user in using a PlayStation :tm: Network authentication code, returning a session identifier that can + * subsequently be used for API calls which require an authenticated user + * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithpsn + */ + LoginWithPSN(request: PlayFabServerModels.LoginWithPSNRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Securely login a game client from an external server backend using a custom identifier for that player. Server Custom ID * and Client Custom ID are mutually exclusive and cannot be used to retrieve the same player account. * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithservercustomid */ - LoginWithServerCustomId(request: PlayFabServerModels.LoginWithServerCustomIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithServerCustomId(request: PlayFabServerModels.LoginWithServerCustomIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using an Steam ID, returning a session identifier that can subsequently be used for API calls which * require an authenticated user * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithsteamid */ - LoginWithSteamId(request: PlayFabServerModels.LoginWithSteamIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithSteamId(request: PlayFabServerModels.LoginWithSteamIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Sign in the user with a Twitch access token + * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithtwitch + */ + LoginWithTwitch(request: PlayFabServerModels.LoginWithTwitchRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using a Xbox Live Token from an external server backend, returning a session identifier that can * subsequently be used for API calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithxbox */ - LoginWithXbox(request: PlayFabServerModels.LoginWithXboxRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithXbox(request: PlayFabServerModels.LoginWithXboxRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Signs the user in using an Xbox ID and Sandbox ID, returning a session identifier that can subsequently be used for API * calls which require an authenticated user * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithxboxid */ - LoginWithXboxId(request: PlayFabServerModels.LoginWithXboxIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + LoginWithXboxId(request: PlayFabServerModels.LoginWithXboxIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Modifies the number of remaining uses of a player's inventory item + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Modifies the number of remaining uses of a player's inventory item * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/modifyitemuses */ - ModifyItemUses(request: PlayFabServerModels.ModifyItemUsesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ModifyItemUses(request: PlayFabServerModels.ModifyItemUsesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Moves an item from a character's inventory into another of the users's character's inventory. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Moves an item from a character's inventory into another of the users's character's inventory. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/moveitemtocharacterfromcharacter */ - MoveItemToCharacterFromCharacter(request: PlayFabServerModels.MoveItemToCharacterFromCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + MoveItemToCharacterFromCharacter(request: PlayFabServerModels.MoveItemToCharacterFromCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Moves an item from a user's inventory into their character's inventory. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Moves an item from a user's inventory into their character's inventory. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/moveitemtocharacterfromuser */ - MoveItemToCharacterFromUser(request: PlayFabServerModels.MoveItemToCharacterFromUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + MoveItemToCharacterFromUser(request: PlayFabServerModels.MoveItemToCharacterFromUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Moves an item from a character's inventory into the owning user's inventory. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Moves an item from a character's inventory into the owning user's inventory. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/moveitemtouserfromcharacter */ - MoveItemToUserFromCharacter(request: PlayFabServerModels.MoveItemToUserFromCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Informs the PlayFab match-making service that the user specified has left the Game Server Instance - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/notifymatchmakerplayerleft - */ - NotifyMatchmakerPlayerLeft(request: PlayFabServerModels.NotifyMatchmakerPlayerLeftRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + MoveItemToUserFromCharacter(request: PlayFabServerModels.MoveItemToUserFromCharacterRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Adds the virtual goods associated with the coupon to the user's inventory. Coupons can be generated via the + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Adds the virtual goods associated with the coupon to the user's inventory. Coupons can be generated via the * Economy->Catalogs tab in the PlayFab Game Manager. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/redeemcoupon */ - RedeemCoupon(request: PlayFabServerModels.RedeemCouponRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Validates a Game Server session ticket and returns details about the user - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/redeemmatchmakerticket - */ - RedeemMatchmakerTicket(request: PlayFabServerModels.RedeemMatchmakerTicketRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Set the state of the indicated Game Server Instance. Also update the heartbeat for the instance. - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/refreshgameserverinstanceheartbeat - */ - RefreshGameServerInstanceHeartbeat(request: PlayFabServerModels.RefreshGameServerInstanceHeartbeatRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Inform the matchmaker that a new Game Server Instance is added. - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/registergame - */ - RegisterGame(request: PlayFabServerModels.RegisterGameRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RedeemCoupon(request: PlayFabServerModels.RedeemCouponRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes the specified friend from the the user's friend list * https://docs.microsoft.com/rest/api/playfab/server/friend-list-management/removefriend */ - RemoveFriend(request: PlayFabServerModels.RemoveFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveFriend(request: PlayFabServerModels.RemoveFriendRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes the specified generic service identifier from the player's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/server/account-management/removegenericid */ - RemoveGenericID(request: PlayFabServerModels.RemoveGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveGenericID(request: PlayFabServerModels.RemoveGenericIDRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Remove a given tag from a player profile. The tag's namespace is automatically generated based on the source of the tag. * https://docs.microsoft.com/rest/api/playfab/server/playstream/removeplayertag */ - RemovePlayerTag(request: PlayFabServerModels.RemovePlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemovePlayerTag(request: PlayFabServerModels.RemovePlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Removes users from the set of those able to update the shared data and the set of users in the group. Only users in the * group can remove members. If as a result of the call, zero users remain with access, the group and its associated data @@ -494,179 +636,220 @@ declare module PlayFabServerModule { * guide: https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/server/shared-group-data/removesharedgroupmembers */ - RemoveSharedGroupMembers(request: PlayFabServerModels.RemoveSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RemoveSharedGroupMembers(request: PlayFabServerModels.RemoveSharedGroupMembersRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Submit a report about a player (due to bad bahavior, etc.) on behalf of another player, so that customer service * representatives for the title can take action concerning potentially toxic players. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/reportplayer */ - ReportPlayer(request: PlayFabServerModels.ReportPlayerServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + ReportPlayer(request: PlayFabServerModels.ReportPlayerServerRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Revoke all active bans for a user. * https://docs.microsoft.com/rest/api/playfab/server/account-management/revokeallbansforuser */ - RevokeAllBansForUser(request: PlayFabServerModels.RevokeAllBansForUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeAllBansForUser(request: PlayFabServerModels.RevokeAllBansForUserRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Revoke all active bans specified with BanId. * https://docs.microsoft.com/rest/api/playfab/server/account-management/revokebans */ - RevokeBans(request: PlayFabServerModels.RevokeBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeBans(request: PlayFabServerModels.RevokeBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Revokes access to an item in a user's inventory + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Revokes access to an item in a user's inventory * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/revokeinventoryitem */ - RevokeInventoryItem(request: PlayFabServerModels.RevokeInventoryItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeInventoryItem(request: PlayFabServerModels.RevokeInventoryItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Revokes access for up to 25 items across multiple users and characters. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Revokes access for up to 25 items across multiple users and characters. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/revokeinventoryitems */ - RevokeInventoryItems(request: PlayFabServerModels.RevokeInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + RevokeInventoryItems(request: PlayFabServerModels.RevokeInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Saves push notification template for title * https://docs.microsoft.com/rest/api/playfab/server/account-management/savepushnotificationtemplate */ - SavePushNotificationTemplate(request: PlayFabServerModels.SavePushNotificationTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SavePushNotificationTemplate(request: PlayFabServerModels.SavePushNotificationTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Forces an email to be sent to the registered contact email address for the user's account based on an account recovery * email template * https://docs.microsoft.com/rest/api/playfab/server/account-management/sendcustomaccountrecoveryemail */ - SendCustomAccountRecoveryEmail(request: PlayFabServerModels.SendCustomAccountRecoveryEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SendCustomAccountRecoveryEmail(request: PlayFabServerModels.SendCustomAccountRecoveryEmailRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sends an email based on an email template to a player's contact email * https://docs.microsoft.com/rest/api/playfab/server/account-management/sendemailfromtemplate */ - SendEmailFromTemplate(request: PlayFabServerModels.SendEmailFromTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SendEmailFromTemplate(request: PlayFabServerModels.SendEmailFromTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sends an iOS/Android Push Notification to a specific user, if that user's device has been configured for Push * Notifications in PlayFab. If a user has linked both Android and iOS devices, both will be notified. * https://docs.microsoft.com/rest/api/playfab/server/account-management/sendpushnotification */ - SendPushNotification(request: PlayFabServerModels.SendPushNotificationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SendPushNotification(request: PlayFabServerModels.SendPushNotificationRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sends an iOS/Android Push Notification template to a specific user, if that user's device has been configured for Push * Notifications in PlayFab. If a user has linked both Android and iOS devices, both will be notified. * https://docs.microsoft.com/rest/api/playfab/server/account-management/sendpushnotificationfromtemplate */ - SendPushNotificationFromTemplate(request: PlayFabServerModels.SendPushNotificationFromTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SendPushNotificationFromTemplate(request: PlayFabServerModels.SendPushNotificationFromTemplateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the tag list for a specified user in the friend list of another user * https://docs.microsoft.com/rest/api/playfab/server/friend-list-management/setfriendtags */ - SetFriendTags(request: PlayFabServerModels.SetFriendTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Sets the custom data of the indicated Game Server Instance - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/setgameserverinstancedata - */ - SetGameServerInstanceData(request: PlayFabServerModels.SetGameServerInstanceDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Set the state of the indicated Game Server Instance. - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/setgameserverinstancestate - */ - SetGameServerInstanceState(request: PlayFabServerModels.SetGameServerInstanceStateRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; - /** - * Set custom tags for the specified Game Server Instance - * https://docs.microsoft.com/rest/api/playfab/server/matchmaking/setgameserverinstancetags - */ - SetGameServerInstanceTags(request: PlayFabServerModels.SetGameServerInstanceTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetFriendTags(request: PlayFabServerModels.SetFriendTagsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Sets the player's secret if it is not already set. Player secrets are used to sign API requests. To reset a player's * secret use the Admin or Server API method SetPlayerSecret. * https://docs.microsoft.com/rest/api/playfab/server/authentication/setplayersecret */ - SetPlayerSecret(request: PlayFabServerModels.SetPlayerSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetPlayerSecret(request: PlayFabServerModels.SetPlayerSecretRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the key-value store of custom publisher settings * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/setpublisherdata */ - SetPublisherData(request: PlayFabServerModels.SetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetPublisherData(request: PlayFabServerModels.SetPublisherDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the key-value store of custom title settings * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/settitledata */ - SetTitleData(request: PlayFabServerModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetTitleData(request: PlayFabServerModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the key-value store of custom title settings * https://docs.microsoft.com/rest/api/playfab/server/title-wide-data-management/settitleinternaldata */ - SetTitleInternalData(request: PlayFabServerModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SetTitleInternalData(request: PlayFabServerModels.SetTitleDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Decrements the character's balance of the specified virtual currency by the stated amount. It is possible to make a VC - * balance negative with this API. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Decrements the character's balance of the specified virtual currency by the stated amount. It is possible to + * make a VC balance negative with this API. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/subtractcharactervirtualcurrency */ - SubtractCharacterVirtualCurrency(request: PlayFabServerModels.SubtractCharacterVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SubtractCharacterVirtualCurrency(request: PlayFabServerModels.SubtractCharacterVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Decrements the user's balance of the specified virtual currency by the stated amount. It is possible to make a VC - * balance negative with this API. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Decrements the user's balance of the specified virtual currency by the stated amount. It is possible to make + * a VC balance negative with this API. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/subtractuservirtualcurrency */ - SubtractUserVirtualCurrency(request: PlayFabServerModels.SubtractUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + SubtractUserVirtualCurrency(request: PlayFabServerModels.SubtractUserVirtualCurrencyRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Apple account from the specified user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkapple + */ + UnlinkApple(request: PlayFabServerModels.UnlinkAppleRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Battle.net account from the user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkbattlenetaccount + */ + UnlinkBattleNetAccount(request: PlayFabServerModels.UnlinkBattleNetAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Facebook account from the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkfacebookaccount + */ + UnlinkFacebookAccount(request: PlayFabServerModels.UnlinkFacebookAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Facebook Instant Games identifier from the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkfacebookinstantgamesid + */ + UnlinkFacebookInstantGamesId(request: PlayFabServerModels.UnlinkFacebookInstantGamesIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Game Center account from the specified user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkgamecenteraccount + */ + UnlinkGameCenterAccount(request: PlayFabServerModels.UnlinkGameCenterAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Nintendo account from the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinknintendoserviceaccount + */ + UnlinkNintendoServiceAccount(request: PlayFabServerModels.UnlinkNintendoServiceAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related NintendoSwitchDeviceId from the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinknintendoswitchdeviceid + */ + UnlinkNintendoSwitchDeviceId(request: PlayFabServerModels.UnlinkNintendoSwitchDeviceIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Unlinks the related PSN account from the user's PlayFab account + * Unlinks the related PlayStation :tm: Network account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkpsnaccount */ - UnlinkPSNAccount(request: PlayFabServerModels.UnlinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkPSNAccount(request: PlayFabServerModels.UnlinkPSNAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the custom server identifier from the user's PlayFab account. * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkservercustomid */ - UnlinkServerCustomId(request: PlayFabServerModels.UnlinkServerCustomIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkServerCustomId(request: PlayFabServerModels.UnlinkServerCustomIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the Steam account associated with the provided Steam ID to the user's PlayFab account + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinksteamid + */ + UnlinkSteamId(request: PlayFabServerModels.UnlinkSteamIdRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Unlinks the related Twitch account from the user's PlayFab account. + * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinktwitchaccount + */ + UnlinkTwitchAccount(request: PlayFabServerModels.UnlinkTwitchAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Unlinks the related Xbox Live account from the user's PlayFab account * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkxboxaccount */ - UnlinkXboxAccount(request: PlayFabServerModels.UnlinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlinkXboxAccount(request: PlayFabServerModels.UnlinkXboxAccountRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Opens a specific container (ContainerItemInstanceId), with a specific key (KeyItemInstanceId, when required), and - * returns the contents of the opened container. If the container (and key when relevant) are consumable (RemainingUses > - * 0), their RemainingUses will be decremented, consistent with the operation of ConsumeItem. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Opens a specific container (ContainerItemInstanceId), with a specific key (KeyItemInstanceId, when + * required), and returns the contents of the opened container. If the container (and key when relevant) are consumable + * (RemainingUses > 0), their RemainingUses will be decremented, consistent with the operation of ConsumeItem. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/unlockcontainerinstance */ - UnlockContainerInstance(request: PlayFabServerModels.UnlockContainerInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlockContainerInstance(request: PlayFabServerModels.UnlockContainerInstanceRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Searches Player or Character inventory for any ItemInstance matching the given CatalogItemId, if necessary unlocks it - * using any appropriate key, and returns the contents of the opened container. If the container (and key when relevant) - * are consumable (RemainingUses > 0), their RemainingUses will be decremented, consistent with the operation of + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Searches Player or Character inventory for any ItemInstance matching the given CatalogItemId, if necessary + * unlocks it using any appropriate key, and returns the contents of the opened container. If the container (and key when + * relevant) are consumable (RemainingUses > 0), their RemainingUses will be decremented, consistent with the operation of * ConsumeItem. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/unlockcontaineritem */ - UnlockContainerItem(request: PlayFabServerModels.UnlockContainerItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UnlockContainerItem(request: PlayFabServerModels.UnlockContainerItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Update the avatar URL of the specified player * https://docs.microsoft.com/rest/api/playfab/server/account-management/updateavatarurl */ - UpdateAvatarUrl(request: PlayFabServerModels.UpdateAvatarUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateAvatarUrl(request: PlayFabServerModels.UpdateAvatarUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates information of a list of existing bans specified with Ban Ids. * https://docs.microsoft.com/rest/api/playfab/server/account-management/updatebans */ - UpdateBans(request: PlayFabServerModels.UpdateBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateBans(request: PlayFabServerModels.UpdateBansRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user's character which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/server/character-data/updatecharacterdata */ - UpdateCharacterData(request: PlayFabServerModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCharacterData(request: PlayFabServerModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user's character which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/server/character-data/updatecharacterinternaldata */ - UpdateCharacterInternalData(request: PlayFabServerModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCharacterInternalData(request: PlayFabServerModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user's character which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/server/character-data/updatecharacterreadonlydata */ - UpdateCharacterReadOnlyData(request: PlayFabServerModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCharacterReadOnlyData(request: PlayFabServerModels.UpdateCharacterDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the values of the specified title-specific statistics for the specific character * https://docs.microsoft.com/rest/api/playfab/server/characters/updatecharacterstatistics */ - UpdateCharacterStatistics(request: PlayFabServerModels.UpdateCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateCharacterStatistics(request: PlayFabServerModels.UpdateCharacterStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Updates the title-specific custom property values for a player + * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateplayercustomproperties + */ + UpdatePlayerCustomProperties(request: PlayFabServerModels.UpdatePlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the values of the specified title-specific statistics for the user * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateplayerstatistics */ - UpdatePlayerStatistics(request: PlayFabServerModels.UpdatePlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdatePlayerStatistics(request: PlayFabServerModels.UpdatePlayerStatisticsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Adds, updates, and removes data keys for a shared group object. If the permission is set to Public, all fields updated * or added in this call will be readable by users not in the group. By default, data permissions are set to Private. @@ -675,72 +858,63 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/gaming/playfab/features/social/groups/using-shared-group-data * https://docs.microsoft.com/rest/api/playfab/server/shared-group-data/updatesharedgroupdata */ - UpdateSharedGroupData(request: PlayFabServerModels.UpdateSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateSharedGroupData(request: PlayFabServerModels.UpdateSharedGroupDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserdata */ - UpdateUserData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserinternaldata */ - UpdateUserInternalData(request: PlayFabServerModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserInternalData(request: PlayFabServerModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Updates the key-value pair data tagged to the specified item, which is read-only from the client. + * _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for + * version 2._ Updates the key-value pair data tagged to the specified item, which is read-only from the client. * https://docs.microsoft.com/rest/api/playfab/server/player-item-management/updateuserinventoryitemcustomdata */ - UpdateUserInventoryItemCustomData(request: PlayFabServerModels.UpdateUserInventoryItemDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserInventoryItemCustomData(request: PlayFabServerModels.UpdateUserInventoryItemDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the publisher-specific custom data for the user which is readable and writable by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserpublisherdata */ - UpdateUserPublisherData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserPublisherData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the publisher-specific custom data for the user which cannot be accessed by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserpublisherinternaldata */ - UpdateUserPublisherInternalData(request: PlayFabServerModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserPublisherInternalData(request: PlayFabServerModels.UpdateUserInternalDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the publisher-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserpublisherreadonlydata */ - UpdateUserPublisherReadOnlyData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserPublisherReadOnlyData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Updates the title-specific custom data for the user which can only be read by the client * https://docs.microsoft.com/rest/api/playfab/server/player-data-management/updateuserreadonlydata */ - UpdateUserReadOnlyData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + UpdateUserReadOnlyData(request: PlayFabServerModels.UpdateUserDataRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Writes a character-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/server/analytics/writecharacterevent */ - WriteCharacterEvent(request: PlayFabServerModels.WriteServerCharacterEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WriteCharacterEvent(request: PlayFabServerModels.WriteServerCharacterEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Writes a player-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/server/analytics/writeplayerevent */ - WritePlayerEvent(request: PlayFabServerModels.WriteServerPlayerEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WritePlayerEvent(request: PlayFabServerModels.WriteServerPlayerEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Writes a title-based event into PlayStream. * https://docs.microsoft.com/rest/api/playfab/server/analytics/writetitleevent */ - WriteTitleEvent(request: PlayFabServerModels.WriteTitleEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): void; + WriteTitleEvent(request: PlayFabServerModels.WriteTitleEventRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; } } declare module PlayFabServerModels { - export interface AdCampaignAttribution { - /** UTC time stamp of attribution */ - AttributedAt: string; - /** Attribution campaign identifier */ - CampaignId?: string; - /** Attribution network name */ - Platform?: string; - - } - export interface AdCampaignAttributionModel { /** UTC time stamp of attribution */ AttributedAt: string; @@ -790,6 +964,20 @@ declare module PlayFabServerModels { } + export interface AddOrUpdateContactEmailRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The new contact email to associate with the player. */ + EmailAddress: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface AddOrUpdateContactEmailResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface AddPlayerTagRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -891,12 +1079,12 @@ declare module PlayFabServerModels { Expires?: string; /** The IP address on which the ban was applied. May affect multiple players. */ IPAddress?: string; - /** The MAC address on which the ban was applied. May affect multiple players. */ - MACAddress?: string; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId?: string; /** The reason why this ban was applied. */ Reason?: string; + /** The family type of the user that is included in the ban. */ + UserFamilyType?: string; } @@ -905,12 +1093,12 @@ declare module PlayFabServerModels { DurationInHours?: number; /** IP address to be banned. May affect multiple players. */ IPAddress?: string; - /** MAC address to be banned. May affect multiple players. */ - MACAddress?: string; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; /** The reason for this ban. Maximum 140 characters. */ Reason?: string; + /** The family type of the user that should be included in the ban if applicable. May affect multiple players. */ + UserFamilyType?: string; } @@ -928,6 +1116,14 @@ declare module PlayFabServerModels { } + export interface BattleNetAccountPlayFabIdPair { + /** Unique Battle.net account identifier for a user. */ + BattleNetAccountId?: string; + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Battle.net account identifier. */ + PlayFabId?: string; + + } + export interface CatalogItem { /** * defines the bundle properties for the item - bundles are items which contain other items, including random drop tables @@ -1071,6 +1267,7 @@ declare module PlayFabServerModels { } type CloudScriptRevisionOption = "Live" + | "Latest" | "Specific"; @@ -1096,16 +1293,6 @@ declare module PlayFabServerModels { } - export interface ContactEmailInfo { - /** The email address */ - EmailAddress?: string; - /** The name of the email info data */ - Name?: string; - /** The verification status of the email */ - VerificationStatus?: string; - - } - export interface ContactEmailInfoModel { /** The email address */ EmailAddress?: string; @@ -1117,14 +1304,17 @@ declare module PlayFabServerModels { } type ContinentCode = "AF" + | "AN" | "AS" | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" + | "AX" | "AL" | "DZ" @@ -1372,7 +1562,8 @@ declare module PlayFabServerModels { | "EH" | "YE" | "ZM" - | "ZW"; + | "ZW" + | "Unknown"; export interface CreateSharedGroupRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique identifier for the shared group (a random identifier will be assigned, if one is not specified). */ @@ -1387,6 +1578,7 @@ declare module PlayFabServerModels { } type Currency = "AED" + | "AFN" | "ALL" | "AMD" @@ -1549,6 +1741,14 @@ declare module PlayFabServerModels { | "ZMW" | "ZWD"; + export interface CustomPropertyDetails { + /** The custom property's name. */ + Name?: string; + /** The custom property's value. */ + Value?: any; + + } + export interface DeleteCharacterFromUserRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId: string; @@ -1568,6 +1768,42 @@ declare module PlayFabServerModels { } + export interface DeletedPropertyDetails { + /** The name of the property which was requested to be deleted. */ + Name?: string; + /** Indicates whether or not the property was deleted. If false, no property with that name existed. */ + WasDeleted: boolean; + + } + + export interface DeletePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Optional field used for concurrency control. One can ensure that the delete operation will only be performed if the + * player's properties have not been updated by any other clients since the last version. + */ + ExpectedPropertiesVersion?: number; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** A list of property names denoting which properties should be deleted. */ + PropertyNames: string[]; + + } + + export interface DeletePlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** The list of properties requested to be deleted. */ + DeletedProperties?: DeletedPropertyDetails[]; + /** PlayFab unique identifier of the user whose properties were deleted. */ + PlayFabId?: string; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + + } + export interface DeletePlayerRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; @@ -1594,19 +1830,8 @@ declare module PlayFabServerModels { } - export interface DeregisterGameRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Unique identifier for the Game Server Instance that is being deregistered. */ - LobbyId: string; - - } - - export interface DeregisterGameResponse extends PlayFabModule.IPlayFabResultCommon { - - } - type EmailVerificationStatus = "Unverified" + | "Pending" | "Confirmed"; @@ -1716,6 +1941,28 @@ declare module PlayFabServerModels { } + export interface ExportPlayersInSegmentRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique identifier of the requested segment. */ + SegmentId: string; + + } + + export interface ExportPlayersInSegmentResult extends PlayFabModule.IPlayFabResultCommon { + /** Unique identifier of the export for the requested Segment. */ + ExportId?: string; + /** Unique identifier of the requested Segment. */ + SegmentId?: string; + + } + + type ExternalFriendSources = "None" + + | "Steam" + | "Facebook" + | "Xbox" + | "Psn" + | "All"; + export interface FacebookInstantGamesPlayFabIdPair { /** Unique Facebook Instant Games identifier for a user. */ FacebookInstantGamesId?: string; @@ -1733,17 +1980,23 @@ declare module PlayFabServerModels { } export interface FriendInfo { - /** Available Facebook information (if the user and PlayFab friend are also connected in Facebook). */ + /** Available Facebook information (if the user and connected Facebook friend both have PlayFab Accounts in the same title). */ FacebookInfo?: UserFacebookInfo; /** PlayFab unique identifier for this friend. */ FriendPlayFabId?: string; - /** Available Game Center information (if the user and PlayFab friend are also connected in Game Center). */ + /** + * Available Game Center information (if the user and connected Game Center friend both have PlayFab Accounts in the same + * title). + */ GameCenterInfo?: UserGameCenterInfo; /** The profile of the user, if requested. */ Profile?: PlayerProfileModel; - /** Available PSN information, if the user and PlayFab friend are both connected to PSN. */ + /** + * Available PlayStation :tm: Network information, if the user connected PlayStation :tm Network friend both have PlayFab + * Accounts in the same title. + */ PSNInfo?: UserPsnInfo; - /** Available Steam information (if the user and PlayFab friend are also connected in Steam). */ + /** Available Steam information (if the user and connected Steam friend both have PlayFab Accounts in the same title). */ SteamInfo?: UserSteamInfo; /** Tags which have been associated with this friend. */ Tags?: string[]; @@ -1751,15 +2004,13 @@ declare module PlayFabServerModels { TitleDisplayName?: string; /** PlayFab unique username for this friend. */ Username?: string; - /** Available Xbox information, if the user and PlayFab friend are both connected to Xbox Live. */ + /** Available Xbox information, (if the user and connected Xbox Live friend both have PlayFab Accounts in the same title). */ XboxInfo?: UserXboxInfo; } - type GameInstanceState = "Open" - | "Closed"; - type GenericErrorCodes = "Success" + | "UnkownError" | "InvalidParams" | "AccountNotFound" @@ -1863,7 +2114,6 @@ declare module PlayFabServerModels { | "UnableToConnectToDatabase" | "InternalServerError" | "InvalidReportDate" - | "ReportNotAvailable" | "DatabaseThroughputExceeded" | "InvalidGameTicket" | "ExpiredGameTicket" @@ -2239,7 +2489,6 @@ declare module PlayFabServerModels { | "InsightsManagementGetOperationStatusInvalidParameter" | "DuplicatePurchaseTransactionId" | "EvaluationModePlayerCountExceeded" - | "GetPlayersInSegmentRateLimitExceeded" | "CloudScriptFunctionNameSizeExceeded" | "PaidInsightsFeaturesNotEnabled" | "CloudScriptAzureFunctionsQueueRequestError" @@ -2264,6 +2513,104 @@ declare module PlayFabServerModels { | "SteamUserNotFound" | "ElasticSearchOperationFailed" | "NotImplemented" + | "PublisherNotFound" + | "PublisherDeleted" + | "ApiDisabledForMigration" + | "ResourceNameUpdateNotAllowed" + | "ApiNotEnabledForTitle" + | "DuplicateTitleNameForPublisher" + | "AzureTitleCreationInProgress" + | "TitleConstraintsPublisherDeletion" + | "InvalidPlayerAccountPoolId" + | "PlayerAccountPoolNotFound" + | "PlayerAccountPoolDeleted" + | "TitleCleanupInProgress" + | "AzureResourceConcurrentOperationInProgress" + | "TitlePublisherUpdateNotAllowed" + | "AzureResourceManagerNotSupportedInStamp" + | "ApiNotIncludedInAzurePlayFabFeatureSet" + | "GoogleServiceAccountFailedAuth" + | "GoogleAPIServiceUnavailable" + | "GoogleAPIServiceUnknownError" + | "NoValidIdentityForAad" + | "PlayerIdentityLinkNotFound" + | "PhotonApplicationIdAlreadyInUse" + | "CloudScriptUnableToDeleteProductionRevision" + | "CustomIdNotFound" + | "AutomationInvalidInput" + | "AutomationInvalidRuleName" + | "AutomationRuleAlreadyExists" + | "AutomationRuleLimitExceeded" + | "InvalidGooglePlayGamesServerAuthCode" + | "PlayStreamConnectionFailed" + | "InvalidEventContents" + | "InsightsV1Deprecated" + | "AnalysisSubscriptionNotFound" + | "AnalysisSubscriptionFailed" + | "AnalysisSubscriptionFoundAlready" + | "AnalysisSubscriptionManagementInvalidInput" + | "InvalidGameCenterId" + | "InvalidNintendoSwitchAccountId" + | "EntityAPIKeysNotSupported" + | "IpAddressBanned" + | "EntityLineageBanned" + | "NamespaceMismatch" + | "InvalidServiceConfiguration" + | "InvalidNamespaceMismatch" + | "LeaderboardColumnLengthMismatch" + | "InvalidStatisticScore" + | "LeaderboardColumnsNotSpecified" + | "LeaderboardMaxSizeTooLarge" + | "InvalidAttributeStatisticsSpecified" + | "LeaderboardNotFound" + | "TokenSigningKeyNotFound" + | "LeaderboardNameConflict" + | "LinkedStatisticColumnMismatch" + | "NoLinkedStatisticToLeaderboard" + | "StatDefinitionAlreadyLinkedToLeaderboard" + | "LinkingStatsNotAllowedForEntityType" + | "LeaderboardCountLimitExceeded" + | "LeaderboardSizeLimitExceeded" + | "LeaderboardDefinitionModificationNotAllowedWhileLinked" + | "StatisticDefinitionModificationNotAllowedWhileLinked" + | "LeaderboardUpdateNotAllowedWhileLinked" + | "CloudScriptAzureFunctionsEventHubRequestError" + | "ExternalEntityNotAllowedForTier" + | "InvalidBaseTimeForInterval" + | "EntityTypeMismatchWithStatDefinition" + | "SpecifiedVersionLeaderboardNotFound" + | "LeaderboardColumnLengthMismatchWithStatDefinition" + | "DuplicateColumnNameFound" + | "LinkedStatisticColumnNotFound" + | "LinkedStatisticColumnRequired" + | "MultipleLinkedStatisticsNotAllowed" + | "DuplicateLinkedStatisticColumnNameFound" + | "AggregationTypeNotAllowedForMultiColumnStatistic" + | "MaxQueryableVersionsValueNotAllowedForTier" + | "StatisticDefinitionHasNullOrEmptyVersionConfiguration" + | "StatisticColumnLengthMismatch" + | "InvalidExternalEntityId" + | "UpdatingStatisticsUsingTransactionIdNotAvailableForFreeTier" + | "TransactionAlreadyApplied" + | "ReportDataNotRetrievedSuccessfully" + | "ResetIntervalCannotBeModified" + | "VersionIncrementRateExceeded" + | "InvalidSteamUsername" + | "InvalidVersionResetForLinkedLeaderboard" + | "BattleNetNotEnabledForTitle" + | "ReportNotProcessed" + | "DataNotAvailable" + | "InvalidReportName" + | "ResourceNotModified" + | "StudioCreationLimitExceeded" + | "StudioDeletionInitiated" + | "ProductDisabledForTitle" + | "PreconditionFailed" + | "CannotEnableAnonymousPlayerCreation" + | "ParentCustomerAccountNotFound" + | "AccountLinkedToABannedPlayer" + | "AzureSubscriptionNotEligibleForLinking" + | "EntityIsNotAMember" | "MatchmakingEntityInvalid" | "MatchmakingPlayerAttributesInvalid" | "MatchmakingQueueNotFound" @@ -2285,6 +2632,11 @@ declare module PlayFabServerModels { | "MatchmakingQueueLimitExceeded" | "MatchmakingRequestTypeMismatch" | "MatchmakingBadRequest" + | "PubSubFeatureNotEnabledForTitle" + | "PubSubTooManyRequests" + | "PubSubConnectionNotFoundForEntity" + | "PubSubConnectionHandleInvalid" + | "PubSubSubscriptionLimitExceeded" | "TitleConfigNotFound" | "TitleConfigUpdateConflict" | "TitleConfigSerializationError" @@ -2302,6 +2654,8 @@ declare module PlayFabServerModels { | "CatalogItemTypeInvalid" | "CatalogBadRequest" | "CatalogTooManyRequests" + | "InvalidCatalogItemConfiguration" + | "LegacyEconomyDisabled" | "ExportInvalidStatusUpdate" | "ExportInvalidPrefix" | "ExportBlobContainerDoesNotExist" @@ -2326,6 +2680,7 @@ declare module PlayFabServerModels { | "ExportCannotParseQuery" | "ExportControlCommandsNotAllowed" | "ExportQueryMissingTableReference" + | "ExportInsightsV1Deprecated" | "ExplorerBasicInvalidQueryName" | "ExplorerBasicInvalidQueryDescription" | "ExplorerBasicInvalidQueryConditions" @@ -2341,10 +2696,13 @@ declare module PlayFabServerModels { | "ExplorerBasicUpdateQueryError" | "ExplorerBasicSavedQueriesLimit" | "ExplorerBasicSavedQueryNotFound" + | "TenantShardMapperShardNotFound" | "TitleNotEnabledForParty" | "PartyVersionNotFound" | "MultiplayerServerBuildReferencedByMatchmakingQueue" | "MultiplayerServerBuildReferencedByBuildAlias" + | "MultiplayerServerBuildAliasReferencedByMatchmakingQueue" + | "PartySerializationError" | "ExperimentationExperimentStopped" | "ExperimentationExperimentRunning" | "ExperimentationExperimentNotFound" @@ -2368,6 +2726,10 @@ declare module PlayFabServerModels { | "ExperimentationExclusionGroupCannotDelete" | "ExperimentationExclusionGroupInvalidTrafficAllocation" | "ExperimentationExclusionGroupInvalidName" + | "ExperimentationLegacyExperimentInvalidOperation" + | "ExperimentationExperimentStopFailed" + | "ExperimentationExperimentDeleteFailed" + | "ExperimentationExperimentStartFailed" | "MaxActionDepthExceeded" | "TitleNotOnUpdatedPricingPlan" | "SegmentManagementTitleNotInFlight" @@ -2382,8 +2744,219 @@ declare module PlayFabServerModels { | "UpdateSegmentRateLimitExceeded" | "GetSegmentsRateLimitExceeded" | "AsyncExportNotInFlight" + | "AsyncExportNotFound" + | "AsyncExportRateLimitExceeded" + | "AnalyticsSegmentCountOverLimit" + | "GetSegmentPlayerCountNotInFlight" + | "GetSegmentPlayerCountRateLimitExceeded" | "SnapshotNotFound" - | "InventoryApiNotImplemented"; + | "InventoryApiNotImplemented" + | "InventoryCollectionDeletionDisallowed" + | "LobbyDoesNotExist" + | "LobbyRateLimitExceeded" + | "LobbyPlayerAlreadyJoined" + | "LobbyNotJoinable" + | "LobbyMemberCannotRejoin" + | "LobbyCurrentPlayersMoreThanMaxPlayers" + | "LobbyPlayerNotPresent" + | "LobbyBadRequest" + | "LobbyPlayerMaxLobbyLimitExceeded" + | "LobbyNewOwnerMustBeConnected" + | "LobbyCurrentOwnerStillConnected" + | "LobbyMemberIsNotOwner" + | "LobbyServerMismatch" + | "LobbyServerNotFound" + | "LobbyDifferentServerAlreadyJoined" + | "LobbyServerAlreadyJoined" + | "LobbyIsNotClientOwned" + | "LobbyDoesNotUseConnections" + | "EventSamplingInvalidRatio" + | "EventSamplingInvalidEventNamespace" + | "EventSamplingInvalidEventName" + | "EventSamplingRatioNotFound" + | "TelemetryKeyNotFound" + | "TelemetryKeyInvalidName" + | "TelemetryKeyAlreadyExists" + | "TelemetryKeyInvalid" + | "TelemetryKeyCountOverLimit" + | "TelemetryKeyDeactivated" + | "TelemetryKeyLongInsightsRetentionNotAllowed" + | "EventSinkConnectionInvalid" + | "EventSinkConnectionUnauthorized" + | "EventSinkRegionInvalid" + | "EventSinkLimitExceeded" + | "EventSinkSasTokenInvalid" + | "EventSinkNotFound" + | "EventSinkNameInvalid" + | "EventSinkSasTokenPermissionInvalid" + | "EventSinkSecretInvalid" + | "EventSinkTenantNotFound" + | "EventSinkAadNotFound" + | "EventSinkDatabaseNotFound" + | "EventSinkTitleUnauthorized" + | "EventSinkInsufficientRoleAssignment" + | "EventSinkContainerNotFound" + | "EventSinkTenantIdInvalid" + | "EventSinkResourceMisconfigured" + | "EventSinkAccessDenied" + | "EventSinkWriteConflict" + | "EventSinkResourceNotFound" + | "EventSinkResourceFeatureNotSupported" + | "EventSinkBucketNameInvalid" + | "EventSinkResourceUnavailable" + | "OperationCanceled" + | "InvalidDisplayNameRandomSuffixLength" + | "AllowNonUniquePlayerDisplayNamesDisableNotAllowed" + | "PartitionedEventInvalid" + | "PartitionedEventCountOverLimit" + | "ManageEventNamespaceInvalid" + | "ManageEventNameInvalid" + | "ManagedEventNotFound" + | "ManageEventsInvalidRatio" + | "ManagedEventInvalid" + | "PlayerCustomPropertiesPropertyNameTooLong" + | "PlayerCustomPropertiesPropertyNameIsInvalid" + | "PlayerCustomPropertiesStringPropertyValueTooLong" + | "PlayerCustomPropertiesValueIsInvalidType" + | "PlayerCustomPropertiesVersionMismatch" + | "PlayerCustomPropertiesPropertyCountTooHigh" + | "PlayerCustomPropertiesDuplicatePropertyName" + | "PlayerCustomPropertiesPropertyDoesNotExist" + | "AddonAlreadyExists" + | "AddonDoesntExist" + | "TrueSkillUnauthorized" + | "TrueSkillInvalidTitleId" + | "TrueSkillInvalidScenarioId" + | "TrueSkillInvalidModelId" + | "TrueSkillInvalidModelName" + | "TrueSkillInvalidPlayerIds" + | "TrueSkillInvalidEntityKey" + | "TrueSkillInvalidConditionKey" + | "TrueSkillInvalidConditionValue" + | "TrueSkillInvalidConditionAffinityWeight" + | "TrueSkillInvalidEventName" + | "TrueSkillMatchResultCreated" + | "TrueSkillMatchResultAlreadySubmitted" + | "TrueSkillBadPlayerIdInMatchResult" + | "TrueSkillInvalidBotIdInMatchResult" + | "TrueSkillDuplicatePlayerInMatchResult" + | "TrueSkillNoPlayerInMatchResultTeam" + | "TrueSkillPlayersInMatchResultExceedingLimit" + | "TrueSkillInvalidPreMatchPartyInMatchResult" + | "TrueSkillInvalidTimestampInMatchResult" + | "TrueSkillStartTimeMissingInMatchResult" + | "TrueSkillEndTimeMissingInMatchResult" + | "TrueSkillInvalidPlayerSecondsPlayedInMatchResult" + | "TrueSkillNoTeamInMatchResult" + | "TrueSkillNotEnoughTeamsInMatchResult" + | "TrueSkillInvalidRanksInMatchResult" + | "TrueSkillNoWinnerInMatchResult" + | "TrueSkillMissingRequiredCondition" + | "TrueSkillMissingRequiredEvent" + | "TrueSkillUnknownEventName" + | "TrueSkillInvalidEventCount" + | "TrueSkillUnknownConditionKey" + | "TrueSkillUnknownConditionValue" + | "TrueSkillScenarioConfigDoesNotExist" + | "TrueSkillUnknownModelId" + | "TrueSkillNoModelInScenario" + | "TrueSkillNotSupportedForTitle" + | "TrueSkillModelIsNotActive" + | "TrueSkillUnauthorizedToQueryOtherPlayerSkills" + | "TrueSkillInvalidMaxIterations" + | "TrueSkillEndTimeBeforeStartTime" + | "TrueSkillInvalidJobId" + | "TrueSkillInvalidMetadataId" + | "TrueSkillMissingBuildVerison" + | "TrueSkillJobAlreadyExists" + | "TrueSkillJobNotFound" + | "TrueSkillOperationCanceled" + | "TrueSkillActiveModelLimitExceeded" + | "TrueSkillTotalModelLimitExceeded" + | "TrueSkillUnknownInitialModelId" + | "TrueSkillUnauthorizedForJob" + | "TrueSkillInvalidScenarioName" + | "TrueSkillConditionStateIsRequired" + | "TrueSkillEventStateIsRequired" + | "TrueSkillDuplicateEvent" + | "TrueSkillDuplicateCondition" + | "TrueSkillInvalidAnomalyThreshold" + | "TrueSkillConditionKeyLimitExceeded" + | "TrueSkillConditionValuePerKeyLimitExceeded" + | "TrueSkillInvalidTimestamp" + | "TrueSkillEventLimitExceeded" + | "TrueSkillInvalidPlayers" + | "TrueSkillTrueSkillPlayerNull" + | "TrueSkillInvalidPlayerId" + | "TrueSkillInvalidSquadSize" + | "TrueSkillConditionSetNotInModel" + | "TrueSkillModelStateInvalidForOperation" + | "TrueSkillScenarioContainsActiveModel" + | "TrueSkillInvalidConditionRank" + | "TrueSkillTotalScenarioLimitExceeded" + | "TrueSkillInvalidConditionsList" + | "GameSaveManifestNotFound" + | "GameSaveManifestVersionAlreadyExists" + | "GameSaveConflictUpdatingManifest" + | "GameSaveManifestUpdatesNotAllowed" + | "GameSaveFileAlreadyExists" + | "GameSaveManifestVersionNotFinalized" + | "GameSaveUnknownFileInManifest" + | "GameSaveFileExceededReportedSize" + | "GameSaveFileNotUploaded" + | "GameSaveBadRequest" + | "GameSaveOperationNotAllowed" + | "GameSaveDataStorageQuotaExceeded" + | "GameSaveNewerManifestExists" + | "GameSaveBaseVersionNotAvailable" + | "GameSaveManifestVersionQuarantined" + | "GameSaveManifestUploadProgressUpdateNotAllowed" + | "GameSaveNotFinalizedManifestNotEligibleAsKnownGood" + | "GameSaveNoUpdatesRequested" + | "GameSaveTitleDoesNotExist" + | "GameSaveOperationNotAllowedForTitle" + | "GameSaveManifestFilesLimitExceeded" + | "GameSaveManifestDescriptionUpdateNotAllowed" + | "GameSaveTitleConfigNotFound" + | "GameSaveTitleAlreadyOnboarded" + | "GameSaveServiceNotEnabledForTitle" + | "GameSaveServiceOnboardingPending" + | "GameSaveManifestNotEligibleAsConflictingVersion" + | "GameSaveServiceUnavailable" + | "GameSaveConflict" + | "GameSaveManifestNotEligibleForRollback" + | "GameSaveTitleClientAnonymousAccountCreationNotDisabled" + | "GameSaveTitleConfigNoUpdatesRequested" + | "GameSavePlayerNotEligibleForTransfer" + | "StateShareForbidden" + | "StateShareTitleNotInFlight" + | "StateShareStateNotFound" + | "StateShareLinkNotFound" + | "StateShareStateRedemptionLimitExceeded" + | "StateShareStateRedemptionLimitNotUpdated" + | "StateShareCreatedStatesLimitExceeded" + | "StateShareIdMissingOrMalformed" + | "PlayerCreationDisabled" + | "AccountAlreadyExists" + | "TagInvalid" + | "TagTooLong" + | "StatisticColumnAggregationMismatch" + | "StatisticResetIntervalMismatch" + | "VersionConfigurationCannotBeSpecifiedForLinkedStat" + | "VersionConfigurationIsRequired" + | "InvalidEntityTypeForAggregation" + | "MultiLevelAggregationNotAllowed" + | "AggregationTypeNotAllowedForLinkedStat" + | "OperationDeniedDueToDefinitionPolicy" + | "StatisticUpdateNotAllowedWhileLinked" + | "UnsupportedEntityType" + | "EntityTypeSpecifiedRequiresAggregationSource" + | "PlayFabErrorEventNotSupportedForEntityType" + | "MetadataLengthExceeded" + | "MaxQueryableVersionsExceeded" + | "StatisticVersionIncrementNotAllowedWhileLinked" + | "StoreMetricsRequestInvalidInput" + | "StoreMetricsErrorRetrievingMetrics"; export interface GenericPlayFabIdPair { /** Unique generic service identifier for a user. */ @@ -2480,8 +3053,6 @@ declare module PlayFabServerModels { } export interface GetCharacterLeaderboardRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Optional character type on which to filter the leaderboard entries. */ - CharacterType?: string; /** Maximum number of entries to retrieve. */ MaxResultsCount: number; /** First entry in the leaderboard to be retrieved. */ @@ -2537,10 +3108,11 @@ declare module PlayFabServerModels { export interface GetFriendLeaderboardRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Indicates whether Facebook friends should be included in the response. Default is true. */ - IncludeFacebookFriends?: boolean; - /** Indicates whether Steam service friends should be included in the response. Default is true. */ - IncludeSteamFriends?: boolean; + /** + * Indicates which other platforms' friends should be included in the response. In HTTP, it is represented as a + * comma-separated list of platforms. + */ + ExternalPlatformFriends?: string; /** Maximum number of entries to retrieve. */ MaxResultsCount: number; /** The player whose friend leaderboard to get */ @@ -2565,10 +3137,11 @@ declare module PlayFabServerModels { export interface GetFriendsListRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Indicates whether Facebook friends should be included in the response. Default is true. */ - IncludeFacebookFriends?: boolean; - /** Indicates whether Steam service friends should be included in the response. Default is true. */ - IncludeSteamFriends?: boolean; + /** + * Indicates which other platforms' friends should be included in the response. In HTTP, it is represented as a + * comma-separated list of platforms. + */ + ExternalPlatformFriends?: string; /** PlayFab identifier of the player whose friend list to get. */ PlayFabId: string; /** @@ -2577,7 +3150,10 @@ declare module PlayFabServerModels { * the Game Manager "Client Profile Options" tab in the "Settings" section. */ ProfileConstraints?: PlayerProfileViewConstraints; - /** Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. */ + /** + * Xbox token if Xbox friends should be included. Requires Xbox be configured on PlayFab. When provided, all Xbox Live + * users the caller is following are included regardless of whether they follow the caller back. + */ XboxToken?: string; } @@ -2591,8 +3167,6 @@ declare module PlayFabServerModels { export interface GetLeaderboardAroundCharacterRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID for a specific character owned by a user */ CharacterId: string; - /** Optional character type on which to filter the leaderboard entries. */ - CharacterType?: string; /** Maximum number of entries to retrieve. */ MaxResultsCount: number; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ @@ -2639,8 +3213,6 @@ declare module PlayFabServerModels { } export interface GetLeaderboardForUsersCharactersRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Maximum number of entries to retrieve. */ - MaxResultsCount: number; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; /** Unique identifier for the title-specific statistic for the leaderboard. */ @@ -2772,6 +3344,27 @@ declare module PlayFabServerModels { } + export interface GetPlayerCustomPropertyRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** Specific property name to search for in the player's properties. */ + PropertyName: string; + + } + + export interface GetPlayerCustomPropertyResult extends PlayFabModule.IPlayFabResultCommon { + /** PlayFab unique identifier of the user whose properties are being returned. */ + PlayFabId?: string; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + /** Player specific property and its corresponding value. */ + Property?: CustomPropertyDetails; + + } + export interface GetPlayerProfileRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -2801,30 +3394,17 @@ declare module PlayFabServerModels { } - export interface GetPlayersInSegmentRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Continuation token if retrieving subsequent pages of results. */ - ContinuationToken?: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Maximum number of profiles to load. Default is 1,000. Maximum is 10,000. */ - MaxBatchSize?: number; - /** - * Number of seconds to keep the continuation token active. After token expiration it is not possible to continue paging - * results. Default is 300 (5 minutes). Maximum is 1,800 (30 minutes). - */ - SecondsToLive?: number; - /** Unique identifier for this segment. */ - SegmentId: string; + export interface GetPlayersInSegmentExportRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique identifier of the export for the requested Segment. */ + ExportId: string; } - export interface GetPlayersInSegmentResult extends PlayFabModule.IPlayFabResultCommon { - /** Continuation token to use to retrieve subsequent pages of results. If token returns null there are no more results. */ - ContinuationToken?: string; - /** Array of player profiles in this segment. */ - PlayerProfiles?: PlayerProfile[]; - /** Count of profiles matching this segment. */ - ProfilesInSegment: number; + export interface GetPlayersInSegmentExportResponse extends PlayFabModule.IPlayFabResultCommon { + /** Url from which the index file can be downloaded. */ + IndexUrl?: string; + /** Shows the current status of the export */ + State?: string; } @@ -2891,8 +3471,26 @@ declare module PlayFabServerModels { } + export interface GetPlayFabIDsFromBattleNetAccountIdsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Battle.net account identifiers for which the title needs to get PlayFab identifiers. The array cannot + * exceed 10 in length. + */ + BattleNetAccountIds: string[]; + + } + + export interface GetPlayFabIDsFromBattleNetAccountIdsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Battle.net account identifiers to PlayFab identifiers. */ + Data?: BattleNetAccountPlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromFacebookIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Facebook identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Facebook identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed 25 in + * length. + */ FacebookIDs: string[]; } @@ -2904,7 +3502,10 @@ declare module PlayFabServerModels { } export interface GetPlayFabIDsFromFacebookInstantGamesIdsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Facebook Instant Games identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Facebook Instant Games identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ FacebookInstantGamesIds: string[]; } @@ -2930,8 +3531,26 @@ declare module PlayFabServerModels { } + export interface GetPlayFabIDsFromNintendoServiceAccountIdsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Nintendo Switch Account identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ + NintendoAccountIds: string[]; + + } + + export interface GetPlayFabIDsFromNintendoServiceAccountIdsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Nintendo Switch Service Account identifiers to PlayFab identifiers. */ + Data?: NintendoServiceAccountPlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Nintendo Switch Device identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique Nintendo Switch Device identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ NintendoSwitchDeviceIds: string[]; } @@ -2942,42 +3561,128 @@ declare module PlayFabServerModels { } + export interface GetPlayFabIDsFromOpenIdsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique OpenId Connect identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed + * 10 in length. + */ + OpenIdSubjectIdentifiers: OpenIdSubjectIdentifier[]; + + } + + export interface GetPlayFabIDsFromOpenIdsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of OpenId Connect identifiers to PlayFab identifiers. */ + Data?: OpenIdSubjectIdentifierPlayFabIdPair[]; + + } + export interface GetPlayFabIDsFromPSNAccountIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Id of the PSN issuer environment. If null, defaults to production environment. */ + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ IssuerId?: number; - /** Array of unique PlayStation Network identifiers for which the title needs to get PlayFab identifiers. */ + /** + * Array of unique PlayStation :tm: Network identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ PSNAccountIDs: string[]; } export interface GetPlayFabIDsFromPSNAccountIDsResult extends PlayFabModule.IPlayFabResultCommon { - /** Mapping of PlayStation Network identifiers to PlayFab identifiers. */ + /** Mapping of PlayStation :tm: Network identifiers to PlayFab identifiers. */ Data?: PSNAccountPlayFabIdPair[]; } - export interface GetPlayFabIDsFromSteamIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Array of unique Steam identifiers (Steam profile IDs) for which the title needs to get PlayFab identifiers. */ - SteamStringIDs?: string[]; + export interface GetPlayFabIDsFromPSNOnlineIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ + IssuerId?: number; + /** + * Array of unique PlayStation :tm: Network identifiers for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ + PSNOnlineIDs: string[]; } - export interface GetPlayFabIDsFromSteamIDsResult extends PlayFabModule.IPlayFabResultCommon { - /** Mapping of Steam identifiers to PlayFab identifiers. */ - Data?: SteamPlayFabIdPair[]; + export interface GetPlayFabIDsFromPSNOnlineIDsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of PlayStation :tm: Network identifiers to PlayFab identifiers. */ + Data?: PSNOnlinePlayFabIdPair[]; } - export interface GetPlayFabIDsFromXboxLiveIDsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The ID of Xbox Live sandbox. */ - Sandbox?: string; - /** Array of unique Xbox Live account identifiers for which the title needs to get PlayFab identifiers. */ + export interface GetPlayFabIDsFromServerCustomIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique server custom player identifiers for which the title needs to get PlayFab identifiers. Cannot contain + * more than 25 identifiers. + */ + ServerCustomIds: string[]; + + } + + export interface GetPlayFabIDsFromServerCustomIDsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of server custom identifiers to PlayFab identifiers. */ + Data?: ServerCustomIDPlayFabIDPair[]; + + } + + export interface GetPlayFabIDsFromSteamIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Steam identifiers (Steam profile IDs) for which the title needs to get PlayFab identifiers. The array + * cannot exceed 25 in length. + */ + SteamStringIDs?: string[]; + + } + + export interface GetPlayFabIDsFromSteamIDsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Steam identifiers to PlayFab identifiers. */ + Data?: SteamPlayFabIdPair[]; + + } + + export interface GetPlayFabIDsFromSteamNamesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Steam identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed 25 in + * length. + */ + SteamNames: string[]; + + } + + export interface GetPlayFabIDsFromSteamNamesResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Steam identifiers to PlayFab identifiers. */ + Data?: SteamNamePlayFabIdPair[]; + + } + + export interface GetPlayFabIDsFromTwitchIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Array of unique Twitch identifiers (Twitch's _id) for which the title needs to get PlayFab identifiers. The array cannot + * exceed 25 in length. + */ + TwitchIds: string[]; + + } + + export interface GetPlayFabIDsFromTwitchIDsResult extends PlayFabModule.IPlayFabResultCommon { + /** Mapping of Twitch identifiers to PlayFab identifiers. */ + Data?: TwitchPlayFabIdPair[]; + + } + + export interface GetPlayFabIDsFromXboxLiveIDsRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The ID of Xbox Live sandbox. */ + Sandbox?: string; + /** + * Array of unique Xbox Live account identifiers for which the title needs to get PlayFab identifiers. The array cannot + * exceed 25 in length. + */ XboxLiveAccountIDs: string[]; } export interface GetPlayFabIDsFromXboxLiveIDsResult extends PlayFabModule.IPlayFabResultCommon { - /** Mapping of PlayStation Network identifiers to PlayFab identifiers. */ + /** Mapping of Xbox Live identifiers to PlayFab identifiers. */ Data?: XboxLiveAccountPlayFabIdPair[]; } @@ -3011,6 +3716,18 @@ declare module PlayFabServerModels { } + export interface GetSegmentPlayerCountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique identifier for the requested segment. */ + SegmentId: string; + + } + + export interface GetSegmentPlayerCountResult extends PlayFabModule.IPlayFabResultCommon { + /** Count of profiles matching this segment. */ + ProfilesInSegment: number; + + } + export interface GetSegmentResult { /** Identifier of the segments AB Test, if it is attached to one. */ ABTestParent?: string; @@ -3379,6 +4096,18 @@ declare module PlayFabServerModels { } + export interface LinkBattleNetAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to a specific Battle.net account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** The JSON Web Token (JWT) returned by Battle.net after login */ + IdentityToken: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + export interface LinkedPlatformAccountModel { /** Linked account email of the user on the platform, if available */ Email?: string; @@ -3391,18 +4120,61 @@ declare module PlayFabServerModels { } + export interface LinkNintendoServiceAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to a specific Nintendo Switch account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** + * The JSON Web token (JWT) returned by Nintendo after login. Used to validate the request and find the user ID (Nintendo + * Switch subject) to link with. + */ + IdentityToken: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface LinkNintendoServiceAccountSubjectRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to a specific Nintendo Service Account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** The Nintendo Service Account subject or id to link to the PlayFab user. */ + Subject: string; + + } + + export interface LinkNintendoSwitchDeviceIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to the Nintendo Switch Device ID, unlink the other user and re-link. */ + ForceLink?: boolean; + /** Nintendo Switch unique identifier for the user's device. */ + NintendoSwitchDeviceId: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface LinkNintendoSwitchDeviceIdResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface LinkPSNAccountRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Authentication code provided by the PlayStation Network. */ + /** Authentication code provided by the PlayStation :tm: Network. */ AuthCode: string; /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; - /** Id of the PSN issuer environment. If null, defaults to production environment. */ + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ IssuerId?: number; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; - /** Redirect URI supplied to PSN when requesting an auth code */ + /** Redirect URI supplied to PlayStation :tm: Network when requesting an auth code */ RedirectUri: string; } @@ -3411,6 +4183,24 @@ declare module PlayFabServerModels { } + export interface LinkPSNIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to the account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ + IssuerId?: number; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** Id of the PlayStation :tm: Network user. Also known as the PSN Account Id. */ + PSNUserId: string; + + } + + export interface LinkPSNIdResponse extends PlayFabModule.IPlayFabResultCommon { + + } + export interface LinkServerCustomIdRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -3427,12 +4217,40 @@ declare module PlayFabServerModels { } + export interface LinkSteamIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to the account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** PlayFab unique identifier of the user to link. */ + PlayFabId: string; + /** Unique Steam identifier for a user. */ + SteamId: string; + + } + + export interface LinkSteamIdResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface LinkTwitchAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Twitch access token for authentication. */ + AccessToken: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to the account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** PlayFab unique identifier of the user to link. */ + PlayFabId: string; + + } + export interface LinkXboxAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; /** If another user is already linked to the account, unlink the other user and re-link. */ ForceLink?: boolean; - /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Xbox Live identifier. */ + /** PlayFab unique identifier of the user to link. */ PlayFabId: string; /** Token provided by the Xbox Live SDK/XDK method GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). */ XboxToken: string; @@ -3443,6 +4261,39 @@ declare module PlayFabServerModels { } + export interface LinkXboxIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to the account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** PlayFab unique identifier of the user to link. */ + PlayFabId: string; + /** The id of Xbox Live sandbox. */ + Sandbox: string; + /** Unique Xbox identifier for a user. */ + XboxId: string; + + } + + export interface ListPlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface ListPlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** PlayFab unique identifier of the user whose properties are being returned. */ + PlayFabId?: string; + /** Player specific properties and their corresponding values for this title. */ + Properties?: CustomPropertyDetails[]; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + + } + export interface ListUsersCharactersRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; @@ -3478,6 +4329,7 @@ declare module PlayFabServerModels { } type LoginIdentityProvider = "Unknown" + | "PlayFab" | "Custom" | "GameCenter" @@ -3497,7 +4349,83 @@ declare module PlayFabServerModels { | "FacebookInstantGames" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; + + export interface LoginWithAndroidDeviceIDRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Specific model of the user's device. */ + AndroidDevice?: string; + /** Android device identifier for the user's device. */ + AndroidDeviceId: string; + /** Automatically create a PlayFab account if one is not currently linked to this ID. */ + CreateAccount?: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Flags for which pieces of info to return for the user. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + /** Specific Operating System version for the user's device. */ + OS?: string; + + } + + export interface LoginWithBattleNetRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Automatically create a PlayFab account if one is not currently linked to this ID. */ + CreateAccount?: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** The JSON Web Token (JWT) returned by Battle.net after login */ + IdentityToken: string; + /** Flags for which pieces of info to return for the user. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + + } + + export interface LoginWithCustomIDRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Automatically create a PlayFab account if one is not currently linked to this ID. */ + CreateAccount?: boolean; + /** Custom unique identifier for the user, generated by the title. */ + CustomId: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Flags for which pieces of info to return for the user. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + + } + + export interface LoginWithIOSDeviceIDRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Automatically create a PlayFab account if one is not currently linked to this ID. */ + CreateAccount?: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Vendor-specific iOS identifier for the user's device. */ + DeviceId: string; + /** Specific model of the user's device. */ + DeviceModel?: string; + /** Flags for which pieces of info to return for the user. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + /** Specific Operating System version for the user's device. */ + OS?: string; + + } + + export interface LoginWithPSNRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Auth code provided by the PlayStation :tm: Network OAuth provider. */ + AuthCode: string; + /** Automatically create a PlayFab account if one is not currently linked to this ID. */ + CreateAccount?: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Flags for which pieces of info to return for the user. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + /** Id of the PlayStation :tm: Network issuer environment. If null, defaults to production environment. */ + IssuerId?: number; + /** Redirect URI supplied to PlayStation :tm: Network when requesting an auth code */ + RedirectUri: string; + + } export interface LoginWithServerCustomIdRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ @@ -3506,10 +4434,10 @@ declare module PlayFabServerModels { CustomTags?: { [key: string]: string | null }; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** The backend server identifier for this player. */ - ServerCustomId?: string; + ServerCustomId: string; } @@ -3520,11 +4448,27 @@ declare module PlayFabServerModels { CustomTags?: { [key: string]: string | null }; /** Flags for which pieces of info to return for the user. */ InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; - /** Unique Steam identifier for a user */ + /** Unique Steam identifier for a user. */ SteamId: string; } + export interface LoginWithTwitchRequest extends PlayFabModule.IPlayFabRequestCommon { + /** Twitch access token for authentication. */ + AccessToken: string; + /** If true, create a new PlayFab account if one does not exist. */ + CreateAccount?: boolean; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Parameters for requesting additional player info. */ + InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; + /** Player secret for additional authentication. */ + PlayerSecret?: string; + /** PlayFab unique identifier of the user. */ + PlayFabId: string; + + } + export interface LoginWithXboxIdRequest extends PlayFabModule.IPlayFabRequestCommon { /** Automatically create a PlayFab account if one is not currently linked to this ID. */ CreateAccount?: boolean; @@ -3534,7 +4478,7 @@ declare module PlayFabServerModels { InfoRequestParameters?: GetPlayerCombinedInfoRequestParams; /** The id of Xbox Live sandbox. */ Sandbox: string; - /** Unique Xbox identifier for a user */ + /** Unique Xbox identifier for a user. */ XboxId: string; } @@ -3664,6 +4608,17 @@ declare module PlayFabServerModels { } + export interface NintendoServiceAccountPlayFabIdPair { + /** Unique Nintendo Switch Service Account identifier for a user. */ + NintendoServiceAccountId?: string; + /** + * Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Nintendo Switch Service Account + * identifier. + */ + PlayFabId?: string; + + } + export interface NintendoSwitchPlayFabIdPair { /** Unique Nintendo Switch Device identifier for a user. */ NintendoSwitchDeviceId?: string; @@ -3672,27 +4627,22 @@ declare module PlayFabServerModels { } - export interface NotifyMatchmakerPlayerLeftRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Unique identifier of the Game Instance the user is leaving. */ - LobbyId: string; - /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ - PlayFabId: string; + export interface OpenIdSubjectIdentifier { + /** The issuer URL for the OpenId Connect provider, or the override URL if an override exists. */ + Issuer: string; + /** The unique subject identifier within the context of the issuer. */ + Subject: string; } - export interface NotifyMatchmakerPlayerLeftResult extends PlayFabModule.IPlayFabResultCommon { - /** State of user leaving the Game Server Instance. */ - PlayerState?: string; + export interface OpenIdSubjectIdentifierPlayFabIdPair { + /** Unique OpenId Connect identifier for a user. */ + OpenIdSubjectIdentifier?: OpenIdSubjectIdentifier; + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the OpenId Connect identifier. */ + PlayFabId?: string; } - type PlayerConnectionState = "Unassigned" - | "Connecting" - | "Participating" - | "Participated"; - export interface PlayerLeaderboardEntry { /** Title-specific display name of the user for this leaderboard entry. */ DisplayName?: string; @@ -3707,78 +4657,6 @@ declare module PlayFabServerModels { } - export interface PlayerLinkedAccount { - /** Linked account's email */ - Email?: string; - /** Authentication platform */ - Platform?: string; - /** Platform user identifier */ - PlatformUserId?: string; - /** Linked account's username */ - Username?: string; - - } - - export interface PlayerLocation { - /** City of the player's geographic location. */ - City?: string; - /** The two-character continent code for this location */ - ContinentCode: string; - /** The two-character ISO 3166-1 country code for the country associated with the location */ - CountryCode: string; - /** Latitude coordinate of the player's geographic location. */ - Latitude?: number; - /** Longitude coordinate of the player's geographic location. */ - Longitude?: number; - - } - - export interface PlayerProfile { - /** Array of ad campaigns player has been attributed to */ - AdCampaignAttributions?: AdCampaignAttribution[]; - /** Image URL of the player's avatar. */ - AvatarUrl?: string; - /** Banned until UTC Date. If permanent ban this is set for 20 years after the original ban date. */ - BannedUntil?: string; - /** Array of contact email addresses associated with the player */ - ContactEmailAddresses?: ContactEmailInfo[]; - /** Player record created */ - Created?: string; - /** Player Display Name */ - DisplayName?: string; - /** Last login */ - LastLogin?: string; - /** Array of third party accounts linked to this player */ - LinkedAccounts?: PlayerLinkedAccount[]; - /** Dictionary of player's locations by type. */ - Locations?: { [key: string]: PlayerLocation }; - /** Player account origination */ - Origination?: string; - /** List of player variants for experimentation */ - PlayerExperimentVariants?: string[]; - /** PlayFab Player ID */ - PlayerId?: string; - /** Array of player statistics */ - PlayerStatistics?: PlayerStatistic[]; - /** Publisher this player belongs to */ - PublisherId?: string; - /** Array of configured push notification end points */ - PushNotificationRegistrations?: PushNotificationRegistration[]; - /** Dictionary of player's statistics using only the latest version's value */ - Statistics?: { [key: string]: number }; - /** List of player's tags for segmentation. */ - Tags?: string[]; - /** Title ID this profile applies to */ - TitleId?: string; - /** A sum of player's total purchases in USD across all currencies. */ - TotalValueToDateInUSD?: number; - /** Dictionary of player's total purchases by currency. */ - ValuesToDate?: { [key: string]: number }; - /** Dictionary of player's virtual currency balances */ - VirtualCurrencyBalances?: { [key: string]: number }; - - } - export interface PlayerProfileModel { /** List of advertising campaigns the player has been attributed to */ AdCampaignAttributions?: AdCampaignAttributionModel[]; @@ -3792,7 +4670,11 @@ declare module PlayFabServerModels { Created?: string; /** Player display name */ DisplayName?: string; - /** List of experiment variants for the player. */ + /** + * List of experiment variants for the player. Note that these variants are not guaranteed to be up-to-date when returned + * during login because the player profile is updated only after login. Instead, use the LoginResult.TreatmentAssignment + * property during login to get the correct variants and variables. + */ ExperimentVariants?: string[]; /** UTC time when the player most recently logged in to the title */ LastLogin?: string; @@ -3864,18 +4746,6 @@ declare module PlayFabServerModels { } - export interface PlayerStatistic { - /** Statistic ID */ - Id?: string; - /** Statistic name */ - Name?: string; - /** Current statistic value */ - StatisticValue: number; - /** Statistic version (0 if not a versioned statistic) */ - StatisticVersion: number; - - } - export interface PlayerStatisticVersion { /** time when the statistic version became active */ ActivationTime: string; @@ -3893,13 +4763,27 @@ declare module PlayFabServerModels { } export interface PSNAccountPlayFabIdPair { - /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the PlayStation Network identifier. */ + /** + * Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the PlayStation :tm: Network + * identifier. + */ PlayFabId?: string; - /** Unique PlayStation Network identifier for a user. */ + /** Unique PlayStation :tm: Network identifier for a user. */ PSNAccountId?: string; } + export interface PSNOnlinePlayFabIdPair { + /** + * Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the PlayStation :tm: Network + * identifier. + */ + PlayFabId?: string; + /** Unique PlayStation :tm: Network identifier for a user. */ + PSNOnlineId?: string; + + } + export interface PushNotificationPackage { /** Numerical badge to display on App icon (iOS only) */ Badge: number; @@ -3917,15 +4801,8 @@ declare module PlayFabServerModels { } type PushNotificationPlatform = "ApplePushNotificationService" - | "GoogleCloudMessaging"; - - export interface PushNotificationRegistration { - /** Notification configured endpoint */ - NotificationEndpointARN?: string; - /** Push notification platform */ - Platform?: string; - } + | "GoogleCloudMessaging"; export interface PushNotificationRegistrationModel { /** Notification configured endpoint */ @@ -3965,83 +4842,6 @@ declare module PlayFabServerModels { } - export interface RedeemMatchmakerTicketRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** Unique identifier of the Game Server Instance that is asking for validation of the authorization ticket. */ - LobbyId: string; - /** Server authorization ticket passed back from a call to Matchmake or StartGame. */ - Ticket: string; - - } - - export interface RedeemMatchmakerTicketResult extends PlayFabModule.IPlayFabResultCommon { - /** Error value if the ticket was not validated. */ - Error?: string; - /** Boolean indicating whether the ticket was validated by the PlayFab service. */ - TicketIsValid: boolean; - /** User account information for the user validated. */ - UserInfo?: UserAccountInfo; - - } - - export interface RefreshGameServerInstanceHeartbeatRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Unique identifier of the Game Server Instance for which the heartbeat is updated. */ - LobbyId: string; - - } - - export interface RefreshGameServerInstanceHeartbeatResult extends PlayFabModule.IPlayFabResultCommon { - - } - - type Region = "USCentral" - | "USEast" - | "EUWest" - | "Singapore" - | "Japan" - | "Brazil" - | "Australia"; - - export interface RegisterGameRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Unique identifier of the build running on the Game Server Instance. */ - Build: string; - /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ - CustomTags?: { [key: string]: string | null }; - /** - * Game Mode the Game Server instance is running. Note that this must be defined in the Game Modes tab in the PlayFab Game - * Manager, along with the Build ID (the same Game Mode can be defined for multiple Build IDs). - */ - GameMode: string; - /** Previous lobby id if re-registering an existing game. */ - LobbyId?: string; - /** - * Region in which the Game Server Instance is running. For matchmaking using non-AWS region names, set this to any AWS - * region and use Tags (below) to specify your custom region. - */ - Region: string; - /** IPV4 address of the game server instance. */ - ServerIPV4Address?: string; - /** IPV6 address (if any) of the game server instance. */ - ServerIPV6Address?: string; - /** Port number for communication with the Game Server Instance. */ - ServerPort: string; - /** Public DNS name (if any) of the server */ - ServerPublicDNSName?: string; - /** Tags for the Game Server Instance */ - Tags?: { [key: string]: string | null }; - - } - - export interface RegisterGameResponse extends PlayFabModule.IPlayFabResultCommon { - /** - * Unique identifier generated for the Game Server Instance that is registered. If LobbyId is specified in request and the - * game still exists in PlayFab, the LobbyId in request is returned. Otherwise a new lobby id will be returned. - */ - LobbyId?: string; - - } - export interface RemoveFriendRequest extends PlayFabModule.IPlayFabRequestCommon { /** PlayFab identifier of the friend account which is to be removed. */ FriendPlayFabId: string; @@ -4113,6 +4913,7 @@ declare module PlayFabServerModels { } type ResultTableNodeType = "ItemId" + | "TableId"; export interface RevokeAllBansForUserRequest extends PlayFabModule.IPlayFabRequestCommon { @@ -4302,7 +5103,7 @@ declare module PlayFabServerModels { InfoResultPayload?: GetPlayerCombinedInfoResultPayload; /** The time of this user's previous login. If there was no previous login, then it's DateTime.MinValue */ LastLoginTime?: string; - /** True if the account was newly created on this login. */ + /** True if the master_player_account was newly created on this login. */ NewlyCreated: boolean; /** Player's unique PlayFabId. */ PlayFabId?: string; @@ -4325,47 +5126,8 @@ declare module PlayFabServerModels { } - export interface SetGameServerInstanceDataRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Custom data to set for the specified game server instance. */ - GameServerData: string; - /** Unique identifier of the Game Instance to be updated, in decimal format. */ - LobbyId: string; - - } - - export interface SetGameServerInstanceDataResult extends PlayFabModule.IPlayFabResultCommon { - - } - - export interface SetGameServerInstanceStateRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Unique identifier of the Game Instance to be updated, in decimal format. */ - LobbyId: string; - /** State to set for the specified game server instance. */ - State: string; - - } - - export interface SetGameServerInstanceStateResult extends PlayFabModule.IPlayFabResultCommon { - - } - - export interface SetGameServerInstanceTagsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Unique identifier of the Game Server Instance to be updated. */ - LobbyId: string; - /** - * Tags to set for the specified Game Server Instance. Note that this is the complete list of tags to be associated with - * the Game Server Instance. - */ - Tags: { [key: string]: string | null }; - - } - - export interface SetGameServerInstanceTagsResult extends PlayFabModule.IPlayFabResultCommon { - - } - export interface SetPlayerSecretRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Player secret that is used to verify API request signatures (Enterprise Only). */ + /** Player secret that is used to verify API request signatures. */ PlayerSecret?: string; /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId: string; @@ -4419,6 +5181,7 @@ declare module PlayFabServerModels { } type SourceType = "Admin" + | "BackEnd" | "GameClient" | "GameServer" @@ -4467,6 +5230,14 @@ declare module PlayFabServerModels { } + export interface SteamNamePlayFabIdPair { + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Steam identifier. */ + PlayFabId?: string; + /** Unique Steam identifier for a user, also known as Steam persona name. */ + SteamName?: string; + + } + export interface SteamPlayFabIdPair { /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Steam identifier. */ PlayFabId?: string; @@ -4521,6 +5292,7 @@ declare module PlayFabServerModels { } type SubscriptionProviderStatus = "NoError" + | "Cancelled" | "UnknownError" | "BillingError" @@ -4562,6 +5334,7 @@ declare module PlayFabServerModels { } type TitleActivationStatus = "None" + | "ActivatedTitleKey" | "PendingSteam" | "ActivatedSteam" @@ -4587,6 +5360,94 @@ declare module PlayFabServerModels { } + export interface TwitchPlayFabIdPair { + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Twitch identifier. */ + PlayFabId?: string; + /** Unique Twitch identifier for a user. */ + TwitchId?: string; + + } + + export interface UnlinkAppleRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface UnlinkAppleResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface UnlinkBattleNetAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface UnlinkFacebookAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** PlayFab unique identifier of the user to unlink. */ + PlayFabId: string; + + } + + export interface UnlinkFacebookAccountResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface UnlinkFacebookInstantGamesIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Facebook Instant Games identifier for the user. If not specified, the most recently linked identifier will be used. */ + FacebookInstantGamesId?: string; + /** PlayFab unique identifier of the user to unlink. */ + PlayFabId: string; + + } + + export interface UnlinkFacebookInstantGamesIdResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface UnlinkGameCenterAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface UnlinkGameCenterAccountResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface UnlinkNintendoServiceAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface UnlinkNintendoSwitchDeviceIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Nintendo Switch Device identifier for the user. If not specified, the most recently signed in device ID will be used. */ + NintendoSwitchDeviceId?: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + + export interface UnlinkNintendoSwitchDeviceIdResult extends PlayFabModule.IPlayFabResultCommon { + + } + export interface UnlinkPSNAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -4613,10 +5474,35 @@ declare module PlayFabServerModels { } + export interface UnlinkSteamIdRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Steam account. */ + PlayFabId: string; + + } + + export interface UnlinkSteamIdResult extends PlayFabModule.IPlayFabResultCommon { + + } + + export interface UnlinkTwitchAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** + * Valid token issued by Twitch. Used to specify which twitch account to unlink from the profile. By default it uses the + * one that is present on the profile. + */ + AccessToken?: string; + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** PlayFab unique identifier of the user to unlink. */ + PlayFabId: string; + + } + export interface UnlinkXboxAccountRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; - /** Unique PlayFab identifier for a user, or null if no PlayFab account is linked to the Xbox Live identifier. */ + /** PlayFab unique identifier of the user to unlink. */ PlayFabId: string; } @@ -4693,12 +5579,12 @@ declare module PlayFabServerModels { Expires?: string; /** The updated IP address for the ban. Null for no change. */ IPAddress?: string; - /** The updated MAC address for the ban. Null for no change. */ - MACAddress?: string; /** Whether to make this ban permanent. Set to true to make this ban permanent. This will not modify Active state. */ Permanent?: boolean; /** The updated reason for the ban to be updated. Maximum 140 characters. Null for no change. */ Reason?: string; + /** The updated family type of the user that should be included in the ban. Null for no change. */ + UserFamilyType?: string; } @@ -4761,6 +5647,32 @@ declare module PlayFabServerModels { } + export interface UpdatePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Optional field used for concurrency control. One can ensure that the update operation will only be performed if the + * player's properties have not been updated by any other clients since last the version. + */ + ExpectedPropertiesVersion?: number; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + /** Collection of properties to be set for a player. */ + Properties: UpdateProperty[]; + + } + + export interface UpdatePlayerCustomPropertiesResult extends PlayFabModule.IPlayFabResultCommon { + /** PlayFab unique identifier of the user whose properties were updated. */ + PlayFabId?: string; + /** + * Indicates the current version of a player's properties that have been set. This is incremented after updates and + * deletes. This version can be provided in update and delete calls for concurrency control. + */ + PropertiesVersion: number; + + } + export interface UpdatePlayerStatisticsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -4780,6 +5692,14 @@ declare module PlayFabServerModels { } + export interface UpdateProperty { + /** Name of the custom property. Can contain Unicode letters and digits. They are limited in size. */ + Name: string; + /** Value of the custom property. Limited to booleans, numbers, and strings. */ + Value: any; + + } + export interface UpdateSharedGroupDataRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -4878,6 +5798,8 @@ declare module PlayFabServerModels { AndroidDeviceInfo?: UserAndroidDeviceInfo; /** Sign in with Apple account information, if an Apple account has been linked */ AppleAccountInfo?: UserAppleIdInfo; + /** Battle.net account information, if a Battle.net account has been linked */ + BattleNetAccountInfo?: UserBattleNetInfo; /** Timestamp indicating when the user account was created */ Created: string; /** Custom ID information, if a custom ID has been assigned */ @@ -4890,6 +5812,8 @@ declare module PlayFabServerModels { GameCenterInfo?: UserGameCenterInfo; /** User Google account information, if a Google account has been linked */ GoogleInfo?: UserGoogleInfo; + /** User Google Play Games account information, if a Google Play Games account has been linked */ + GooglePlayGamesInfo?: UserGooglePlayGamesInfo; /** User iOS device information, if an iOS device has been linked */ IosDeviceInfo?: UserIosDeviceInfo; /** User Kongregate account information, if a Kongregate account has been linked */ @@ -4904,8 +5828,10 @@ declare module PlayFabServerModels { PlayFabId?: string; /** Personal information for the user which is considered more sensitive */ PrivateInfo?: UserPrivateAccountInfo; - /** User PSN account information, if a PSN account has been linked */ + /** User PlayStation :tm: Network account information, if a PlayStation :tm: Network account has been linked */ PsnInfo?: UserPsnInfo; + /** Server Custom ID information, if a server custom ID has been assigned */ + ServerCustomIdInfo?: UserServerCustomIdInfo; /** User Steam information, if a Steam account has been linked */ SteamInfo?: UserSteamInfo; /** Title-specific information for the user account */ @@ -4914,8 +5840,6 @@ declare module PlayFabServerModels { TwitchInfo?: UserTwitchInfo; /** User account name in the PlayFab service */ Username?: string; - /** Windows Hello account information, if a Windows Hello account has been linked */ - WindowsHelloInfo?: UserWindowsHelloInfo; /** User XBox account information, if a XBox account has been linked */ XboxInfo?: UserXboxInfo; @@ -4933,6 +5857,14 @@ declare module PlayFabServerModels { } + export interface UserBattleNetInfo { + /** Battle.net identifier */ + BattleNetAccountId?: string; + /** Battle.net display name */ + BattleNetBattleTag?: string; + + } + export interface UserCustomIdInfo { /** Custom ID */ CustomId?: string; @@ -4940,6 +5872,7 @@ declare module PlayFabServerModels { } type UserDataPermission = "Private" + | "Public"; export interface UserDataRecord { @@ -4969,6 +5902,11 @@ declare module PlayFabServerModels { } + type UserFamilyType = "None" + + | "Xbox" + | "Steam"; + export interface UserGameCenterInfo { /** Gamecenter identifier */ GameCenterId?: string; @@ -4989,6 +5927,16 @@ declare module PlayFabServerModels { } + export interface UserGooglePlayGamesInfo { + /** Avatar image url of the Google Play Games player */ + GooglePlayGamesPlayerAvatarImageUrl?: string; + /** Display name of the Google Play Games player */ + GooglePlayGamesPlayerDisplayName?: string; + /** Google Play Games player ID */ + GooglePlayGamesPlayerId?: string; + + } + export interface UserIosDeviceInfo { /** iOS device ID */ IosDeviceId?: string; @@ -5026,6 +5974,7 @@ declare module PlayFabServerModels { } type UserOrigination = "Organic" + | "Steam" | "Google" | "Amazon" @@ -5042,13 +5991,16 @@ declare module PlayFabServerModels { | "XboxLive" | "Parse" | "Twitch" - | "WindowsHello" | "ServerCustomId" | "NintendoSwitchDeviceId" | "FacebookInstantGamesId" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserPrivateAccountInfo { /** user email address */ @@ -5057,13 +6009,19 @@ declare module PlayFabServerModels { } export interface UserPsnInfo { - /** PSN account ID */ + /** PlayStation :tm: Network account ID */ PsnAccountId?: string; - /** PSN online ID */ + /** PlayStation :tm: Network online ID */ PsnOnlineId?: string; } + export interface UserServerCustomIdInfo { + /** Custom ID */ + CustomId?: string; + + } + export interface UserSettings { /** Boolean for whether this player is eligible for gathering device info. */ GatherDeviceInfo: boolean; @@ -5122,17 +6080,11 @@ declare module PlayFabServerModels { } - export interface UserWindowsHelloInfo { - /** Windows Hello Device Name */ - WindowsHelloDeviceName?: string; - /** Windows Hello Public Key Hash */ - WindowsHelloPublicKeyHash?: string; - - } - export interface UserXboxInfo { /** XBox user ID */ XboxUserId?: string; + /** XBox user sandbox */ + XboxUserSandbox?: string; } diff --git a/README.md b/README.md index 39c1e079..76bd1f1b 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ You may install JavaScript SDK with npm by running : `npm install playfab-web-sdk` -Notice that it will install web JavaScript package as opposed to `npm install playfab` which will install NodeJS SDK. +Notice that it will install web JavaScript package as opposed to `npm install playfab-sdk` which will install NodeJS SDK. While npm is generally used for server side packages, you may use one of popular build tools to mix NPM installed packages into your clientside JS codebase. Consider Babel, Webpack, Gulp or Grunt for different approaches to building and automation.