diff --git a/PlayFabSdk/package.json b/PlayFabSdk/package.json index 9ad72737..b104c0fb 100644 --- a/PlayFabSdk/package.json +++ b/PlayFabSdk/package.json @@ -1,6 +1,6 @@ { "name": "playfab-web-sdk", - "version": "1.137.230220", + "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 34735fc4..5b4f9aef 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabAdminApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabAdminApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -309,6 +309,10 @@ 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); }, @@ -321,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); }, @@ -389,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); }, @@ -417,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,6 +449,10 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetSegmentExport", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetSegmentPlayerCount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetSegmentPlayerCount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetSegments: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetSegments", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -525,12 +529,12 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListOpenIdConnection", request, "X-SecretKey", callback, customData, extraHeaders); }, - ListVirtualCurrencyTypes: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListVirtualCurrencyTypes", request, "X-SecretKey", callback, customData, extraHeaders); + ListPlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListPlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); }, - ModifyServerBuild: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ModifyServerBuild", request, "X-SecretKey", callback, customData, extraHeaders); + ListVirtualCurrencyTypes: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListVirtualCurrencyTypes", request, "X-SecretKey", callback, customData, extraHeaders); }, RefundPurchase: function (request, callback, customData, extraHeaders) { @@ -645,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); }, @@ -701,6 +709,10 @@ PlayFab.AdminApi = { 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 ed300c52..9ec5b672 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabAuthenticationApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabAuthenticationApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; diff --git a/PlayFabSdk/src/PlayFab/PlayFabClientApi.js b/PlayFabSdk/src/PlayFab/PlayFabClientApi.js index 83ce1509..d079ce97 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabClientApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabClientApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -313,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); }, @@ -357,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); }, @@ -373,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); }, @@ -405,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); }, @@ -429,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); }, @@ -465,14 +469,26 @@ PlayFab.ClientApi = { 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); }, @@ -549,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); }, @@ -609,6 +629,10 @@ PlayFab.ClientApi = { 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 @@ -657,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 @@ -1065,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); }, @@ -1099,8 +1143,15 @@ PlayFab.ClientApi = { // 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; + 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); @@ -1172,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); }, @@ -1252,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); }, diff --git a/PlayFabSdk/src/PlayFab/PlayFabCloudScriptApi.js b/PlayFabSdk/src/PlayFab/PlayFabCloudScriptApi.js index af3b754a..950a2bf7 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabCloudScriptApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabCloudScriptApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -253,6 +253,10 @@ PlayFab.CloudScriptApi = { 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); }, @@ -281,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); }, diff --git a/PlayFabSdk/src/PlayFab/PlayFabDataApi.js b/PlayFabSdk/src/PlayFab/PlayFabDataApi.js index 44d9841f..9b7aebbc 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabDataApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabDataApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; diff --git a/PlayFabSdk/src/PlayFab/PlayFabEconomyApi.js b/PlayFabSdk/src/PlayFab/PlayFabEconomyApi.js index fc2cedf9..f0d972c4 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabEconomyApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabEconomyApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -273,6 +273,10 @@ PlayFab.EconomyApi = { 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); }, @@ -301,6 +305,10 @@ PlayFab.EconomyApi = { 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); }, @@ -329,10 +337,6 @@ PlayFab.EconomyApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItems", request, "X-EntityToken", callback, customData, extraHeaders); }, - GetMicrosoftStoreAccessTokens: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/GetMicrosoftStoreAccessTokens", request, "X-EntityToken", callback, customData, extraHeaders); - }, - GetTransactionHistory: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/GetTransactionHistory", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -349,6 +353,10 @@ PlayFab.EconomyApi = { 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); }, diff --git a/PlayFabSdk/src/PlayFab/PlayFabEventsApi.js b/PlayFabSdk/src/PlayFab/PlayFabEventsApi.js index 4855b6b4..3e2f69e6 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabEventsApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabEventsApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -241,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); }, diff --git a/PlayFabSdk/src/PlayFab/PlayFabExperimentationApi.js b/PlayFabSdk/src/PlayFab/PlayFabExperimentationApi.js index c5a54bd4..83c1e8f5 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabExperimentationApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabExperimentationApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; diff --git a/PlayFabSdk/src/PlayFab/PlayFabGroupsApi.js b/PlayFabSdk/src/PlayFab/PlayFabGroupsApi.js index 9327f30a..a7bc069a 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabGroupsApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabGroupsApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; diff --git a/PlayFabSdk/src/PlayFab/PlayFabInsightsApi.js b/PlayFabSdk/src/PlayFab/PlayFabInsightsApi.js index d7f1560a..82e192c3 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabInsightsApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabInsightsApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; diff --git a/PlayFabSdk/src/PlayFab/PlayFabLocalizationApi.js b/PlayFabSdk/src/PlayFab/PlayFabLocalizationApi.js index c7d416fc..4d6e370f 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabLocalizationApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabLocalizationApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; diff --git a/PlayFabSdk/src/PlayFab/PlayFabMultiplayerApi.js b/PlayFabSdk/src/PlayFab/PlayFabMultiplayerApi.js index 4dcbae84..5296503e 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabMultiplayerApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabMultiplayerApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -329,6 +329,10 @@ PlayFab.MultiplayerApi = { 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); }, @@ -425,6 +429,10 @@ PlayFab.MultiplayerApi = { 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); }, @@ -433,6 +441,10 @@ PlayFab.MultiplayerApi = { 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); }, @@ -481,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); }, @@ -505,6 +521,10 @@ PlayFab.MultiplayerApi = { 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); }, @@ -557,10 +577,18 @@ PlayFab.MultiplayerApi = { 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 f59bd64a..4458cc60 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabProfilesApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabProfilesApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -257,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); }, 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 626da0bf..18a54ef9 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabMatchmakerApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabProgressionApi.js @@ -1,4 +1,4 @@ -/// +/// var PlayFab = typeof PlayFab != "undefined" ? PlayFab : {}; @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -235,29 +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); }, - PlayerJoined: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/PlayerJoined", request, "X-SecretKey", callback, customData, extraHeaders); + CreateStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/CreateStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); }, - PlayerLeft: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/PlayerLeft", request, "X-SecretKey", callback, customData, extraHeaders); + DeleteLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/DeleteLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); }, - UserInfo: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/UserInfo", request, "X-SecretKey", 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); + }, + + UnlinkAggregationSourceFromStatistic: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/UnlinkAggregationSourceFromStatistic", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UnlinkLeaderboardFromStatistic: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/UnlinkLeaderboardFromStatistic", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UpdateLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/UpdateLeaderboardDefinition", request, "X-EntityToken", 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 f398ff21..b57d0ebd 100644 --- a/PlayFabSdk/src/PlayFab/PlayFabServerApi.js +++ b/PlayFabSdk/src/PlayFab/PlayFabServerApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -253,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); }, @@ -293,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); }, @@ -301,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); }, @@ -313,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); }, @@ -381,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); }, @@ -389,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); }, @@ -405,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,14 +437,30 @@ PlayFab.ServerApi = { 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); }, @@ -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,10 +565,18 @@ 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); }, @@ -541,14 +585,54 @@ PlayFab.ServerApi = { 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); }, @@ -557,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); }, @@ -581,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); }, @@ -661,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); }, @@ -697,6 +757,26 @@ 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); }, @@ -713,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); }, @@ -749,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); }, 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 13a109ea..8a96312d 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabAdminApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabAdminApi.d.ts @@ -25,23 +25,26 @@ declare module PlayFabAdminModule { */ AddPlayerTag(request: PlayFabAdminModels.AddPlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * 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 }): 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 }): 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 }): 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 }): Promise>; @@ -93,6 +96,11 @@ declare module PlayFabAdminModule { * https://docs.microsoft.com/rest/api/playfab/admin/account-management/deletemasterplayeraccount */ 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 @@ -108,6 +116,11 @@ declare module PlayFabAdminModule { * https://docs.microsoft.com/rest/api/playfab/admin/account-management/deleteplayer */ 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. @@ -120,7 +133,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -158,12 +172,14 @@ declare module PlayFabAdminModule { 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 }): 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 }): Promise>; @@ -200,21 +216,16 @@ declare module PlayFabAdminModule { * 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 }): Promise>; - /** - * 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 }): Promise>; - /** - * 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 }): 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 }): 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 @@ -235,15 +246,6 @@ declare module PlayFabAdminModule { * https://docs.microsoft.com/rest/api/playfab/admin/authentication/getplayersharedsecrets */ GetPlayerSharedSecrets(request: PlayFabAdminModels.GetPlayerSharedSecretsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; - /** - * 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 }): Promise>; /** * Retrieves the configuration information for all player statistics defined in the title, regardless of whether they have * a reset interval. @@ -271,7 +273,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -283,13 +286,19 @@ declare module PlayFabAdminModule { * https://docs.microsoft.com/rest/api/playfab/admin/playstream/getsegmentexport */ GetSegmentExport(request: PlayFabAdminModels.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/admin/playstream/getsegmentplayercount + */ + GetSegmentPlayerCount(request: PlayFabAdminModels.GetSegmentPlayerCountRequest, 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 */ 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 }): Promise>; @@ -334,7 +343,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -359,12 +369,14 @@ declare module PlayFabAdminModule { */ 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 }): 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 }): Promise>; @@ -379,17 +391,19 @@ declare module PlayFabAdminModule { */ ListOpenIdConnection(request: PlayFabAdminModels.ListOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retuns the list of all defined virtual currencies for the title - * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/listvirtualcurrencytypes + * Retrieves title-specific custom property values for a player. + * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/listplayercustomproperties */ - ListVirtualCurrencyTypes(request: PlayFabAdminModels.ListVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + ListPlayerCustomProperties(request: PlayFabAdminModels.ListPlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Updates the build details for the specified game server executable - * https://docs.microsoft.com/rest/api/playfab/admin/custom-server-management/modifyserverbuild + * _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 */ - ModifyServerBuild(request: PlayFabAdminModels.ModifyServerBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + ListVirtualCurrencyTypes(request: PlayFabAdminModels.ListVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * 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 }): Promise>; @@ -399,7 +413,8 @@ declare module PlayFabAdminModule { */ RemovePlayerTag(request: PlayFabAdminModels.RemovePlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * 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 }): Promise>; @@ -419,7 +434,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -434,12 +450,14 @@ declare module PlayFabAdminModule { */ 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 }): 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 }): Promise>; @@ -456,7 +474,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -481,7 +500,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -512,7 +532,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -522,7 +543,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -537,6 +559,11 @@ declare module PlayFabAdminModule { * https://docs.microsoft.com/rest/api/playfab/admin/authentication/updateopenidconnection */ 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. @@ -554,7 +581,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -564,7 +592,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -608,6 +637,11 @@ declare module PlayFabAdminModule { * https://docs.microsoft.com/rest/api/playfab/admin/account-management/updateusertitledisplayname */ 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>; } } @@ -621,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; @@ -657,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; @@ -687,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; @@ -710,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. */ @@ -789,6 +871,16 @@ declare module PlayFabAdminModels { 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; } @@ -809,6 +901,8 @@ declare module PlayFabAdminModels { 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; } @@ -1020,16 +1114,6 @@ declare module PlayFabAdminModels { | "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; @@ -1057,7 +1141,8 @@ declare module PlayFabAdminModels { | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" @@ -1308,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.). */ @@ -1376,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; } @@ -1593,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; @@ -1618,6 +1782,16 @@ 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 }; @@ -1640,6 +1814,38 @@ declare module PlayFabAdminModels { } + 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; @@ -1759,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; @@ -1809,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; @@ -1854,25 +2080,6 @@ 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" @@ -1978,7 +2185,6 @@ declare module PlayFabAdminModels { | "UnableToConnectToDatabase" | "InternalServerError" | "InvalidReportDate" - | "ReportNotAvailable" | "DatabaseThroughputExceeded" | "InvalidGameTicket" | "ExpiredGameTicket" @@ -2354,7 +2560,6 @@ declare module PlayFabAdminModels { | "InsightsManagementGetOperationStatusInvalidParameter" | "DuplicatePurchaseTransactionId" | "EvaluationModePlayerCountExceeded" - | "GetPlayersInSegmentRateLimitExceeded" | "CloudScriptFunctionNameSizeExceeded" | "PaidInsightsFeaturesNotEnabled" | "CloudScriptAzureFunctionsQueueRequestError" @@ -2417,6 +2622,66 @@ declare module PlayFabAdminModels { | "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" @@ -2460,6 +2725,8 @@ declare module PlayFabAdminModels { | "CatalogItemTypeInvalid" | "CatalogBadRequest" | "CatalogTooManyRequests" + | "InvalidCatalogItemConfiguration" + | "LegacyEconomyDisabled" | "ExportInvalidStatusUpdate" | "ExportInvalidPrefix" | "ExportBlobContainerDoesNotExist" @@ -2506,6 +2773,7 @@ declare module PlayFabAdminModels { | "MultiplayerServerBuildReferencedByMatchmakingQueue" | "MultiplayerServerBuildReferencedByBuildAlias" | "MultiplayerServerBuildAliasReferencedByMatchmakingQueue" + | "PartySerializationError" | "ExperimentationExperimentStopped" | "ExperimentationExperimentRunning" | "ExperimentationExperimentNotFound" @@ -2529,6 +2797,10 @@ declare module PlayFabAdminModels { | "ExperimentationExclusionGroupCannotDelete" | "ExperimentationExclusionGroupInvalidTrafficAllocation" | "ExperimentationExclusionGroupInvalidName" + | "ExperimentationLegacyExperimentInvalidOperation" + | "ExperimentationExperimentStopFailed" + | "ExperimentationExperimentDeleteFailed" + | "ExperimentationExperimentStartFailed" | "MaxActionDepthExceeded" | "TitleNotOnUpdatedPricingPlan" | "SegmentManagementTitleNotInFlight" @@ -2545,8 +2817,12 @@ declare module PlayFabAdminModels { | "AsyncExportNotInFlight" | "AsyncExportNotFound" | "AsyncExportRateLimitExceeded" + | "AnalyticsSegmentCountOverLimit" + | "GetSegmentPlayerCountNotInFlight" + | "GetSegmentPlayerCountRateLimitExceeded" | "SnapshotNotFound" | "InventoryApiNotImplemented" + | "InventoryCollectionDeletionDisallowed" | "LobbyDoesNotExist" | "LobbyRateLimitExceeded" | "LobbyPlayerAlreadyJoined" @@ -2559,10 +2835,23 @@ declare module PlayFabAdminModels { | "LobbyNewOwnerMustBeConnected" | "LobbyCurrentOwnerStillConnected" | "LobbyMemberIsNotOwner" + | "LobbyServerMismatch" + | "LobbyServerNotFound" + | "LobbyDifferentServerAlreadyJoined" + | "LobbyServerAlreadyJoined" + | "LobbyIsNotClientOwned" + | "LobbyDoesNotUseConnections" | "EventSamplingInvalidRatio" | "EventSamplingInvalidEventNamespace" | "EventSamplingInvalidEventName" | "EventSamplingRatioNotFound" + | "TelemetryKeyNotFound" + | "TelemetryKeyInvalidName" + | "TelemetryKeyAlreadyExists" + | "TelemetryKeyInvalid" + | "TelemetryKeyCountOverLimit" + | "TelemetryKeyDeactivated" + | "TelemetryKeyLongInsightsRetentionNotAllowed" | "EventSinkConnectionInvalid" | "EventSinkConnectionUnauthorized" | "EventSinkRegionInvalid" @@ -2575,9 +2864,170 @@ declare module PlayFabAdminModels { | "EventSinkTenantNotFound" | "EventSinkAadNotFound" | "EventSinkDatabaseNotFound" + | "EventSinkTitleUnauthorized" + | "EventSinkInsufficientRoleAssignment" + | "EventSinkContainerNotFound" + | "EventSinkTenantIdInvalid" + | "EventSinkResourceMisconfigured" + | "EventSinkAccessDenied" + | "EventSinkWriteConflict" + | "EventSinkResourceNotFound" + | "EventSinkResourceFeatureNotSupported" + | "EventSinkBucketNameInvalid" + | "EventSinkResourceUnavailable" | "OperationCanceled" | "InvalidDisplayNameRandomSuffixLength" - | "AllowNonUniquePlayerDisplayNamesDisableNotAllowed"; + | "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 */ @@ -2709,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; } @@ -2834,42 +3259,6 @@ 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 }; - /** - * If set to true, the profiles are loaded asynchronously and the response will include a continuation token and - * approximate profile count until the first batch of profiles is loaded. Use this parameter to help avoid network - * timeouts. - */ - GetProfilesAsync?: boolean; - /** - * Maximum is 10,000. The value 0 will prevent loading any profiles and return only the count of profiles matching this - * segment. - */ - 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 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 GetPlayersSegmentsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -2921,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. */ @@ -2960,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; @@ -3170,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; @@ -3196,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; @@ -3220,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; @@ -3362,6 +3794,25 @@ declare module PlayFabAdminModels { } + 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 ListVirtualCurrencyTypesRequest extends PlayFabModule.IPlayFabRequestCommon { } @@ -3414,7 +3865,10 @@ declare module PlayFabAdminModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface LogStatement { /** Optional object accompanying the message as contextual information */ @@ -3460,61 +3914,6 @@ declare module PlayFabAdminModels { } - 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; @@ -3538,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; @@ -3547,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; } @@ -3565,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 @@ -3607,80 +4019,6 @@ 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 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; - /** The prediction of the player to churn within the next seven days. */ - ChurnPrediction?: 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[]; @@ -3770,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; @@ -3814,18 +4140,37 @@ declare module PlayFabAdminModels { } - type PushNotificationPlatform = "ApplePushNotificationService" + 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; - | "GoogleCloudMessaging"; + } - 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; @@ -3889,15 +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 }; @@ -4138,6 +4474,14 @@ declare module PlayFabAdminModels { 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. */ @@ -4622,7 +4966,8 @@ declare module PlayFabAdminModels { | "FacebookInstantGames" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames"; export interface SegmentModel { /** Segment description. */ @@ -4653,8 +4998,12 @@ declare module PlayFabAdminModels { | "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. */ @@ -4673,6 +5022,8 @@ declare module PlayFabAdminModels { IncrementPlayerStatisticAction?: IncrementPlayerStatisticSegmentAction; /** Push notification segment trigger action. */ PushNotificationAction?: PushNotificationSegmentAction; + /** Subtract inventory item v2 segment trigger action. */ + SubtractInventoryItemsV2Action?: SubtractInventoryItemsV2SegmentAction; } @@ -4690,6 +5041,12 @@ 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 }; @@ -4707,7 +5064,7 @@ declare module PlayFabAdminModels { } 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; @@ -4928,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; @@ -5025,6 +5410,8 @@ declare module PlayFabAdminModels { 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; } @@ -5089,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; } @@ -5132,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. */ @@ -5146,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; } @@ -5286,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 */ @@ -5316,6 +5751,8 @@ declare module PlayFabAdminModels { PrivateInfo?: UserPrivateAccountInfo; /** 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 */ @@ -5341,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; @@ -5378,6 +5823,11 @@ declare module PlayFabAdminModels { } + type UserFamilyType = "None" + + | "Xbox" + | "Steam"; + export interface UserGameCenterInfo { /** Gamecenter identifier */ GameCenterId?: string; @@ -5468,7 +5918,10 @@ declare module PlayFabAdminModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserOriginationSegmentFilter { /** User login provider. */ @@ -5490,6 +5943,12 @@ declare module PlayFabAdminModels { } + 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; @@ -5546,6 +6005,39 @@ declare module PlayFabAdminModels { } + 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[]; + + } + export interface ValueToDateModel { /** ISO 4217 code of the currency used in the purchases */ Currency?: string; diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabAuthenticationApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabAuthenticationApi.d.ts index 37464940..58381549 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabAuthenticationApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabAuthenticationApi.d.ts @@ -116,7 +116,14 @@ declare module PlayFabAuthenticationModels { type IdentifiedDeviceType = "Unknown" | "XboxOne" - | "Scarlett"; + | "Scarlett" + | "WindowsOneCore" + | "WindowsOneCoreMobile" + | "Win32" + | "android" + | "iOS" + | "PlayStation" + | "Nintendo"; type LoginIdentityProvider = "Unknown" @@ -140,7 +147,10 @@ declare module PlayFabAuthenticationModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "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.). */ diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabClientApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabClientApi.d.ts index 9543ba48..3819a54d 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabClientApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabClientApi.d.ts @@ -45,7 +45,8 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -67,13 +68,16 @@ declare module PlayFabClientModule { */ 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 }): 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 }): Promise>; @@ -107,6 +111,11 @@ declare module PlayFabClientModule { * 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 }): Promise>; + /** + * 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. @@ -130,7 +139,8 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -140,7 +150,8 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -169,11 +180,6 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/content/getcontentdownloadurl */ GetContentDownloadUrl(request: PlayFabClientModels.GetContentDownloadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; - /** - * 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 }): Promise>; /** * Retrieves a list of ranked friends of the current player for the given statistic, starting from the indicated point in * the leaderboard @@ -192,11 +198,6 @@ declare module PlayFabClientModule { * 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 }): Promise>; - /** - * 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 }): 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 @@ -219,9 +220,10 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -236,6 +238,11 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayercombinedinfo */ 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 @@ -267,6 +274,11 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/trading/getplayertrades */ 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 @@ -320,17 +332,35 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromnintendoswitchdeviceids */ GetPlayFabIDsFromNintendoSwitchDeviceIds(request: PlayFabClientModels.GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * 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 }): 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 }): 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: @@ -349,8 +379,9 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -363,7 +394,8 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -398,7 +430,8 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -433,6 +466,11 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkapple */ 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 @@ -513,6 +551,11 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkxboxaccount */ 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 @@ -524,6 +567,11 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithapple */ 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 @@ -628,34 +676,27 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithxbox */ LoginWithXbox(request: PlayFabClientModels.LoginWithXboxRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; - /** - * 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 }): 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 }): 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 }): 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 }): 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 */ @@ -672,7 +713,7 @@ declare module PlayFabClientModule { 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 }): Promise>; @@ -717,7 +758,8 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -745,13 +787,15 @@ declare module PlayFabClientModule { */ 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 }): 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 }): Promise>; @@ -765,6 +809,11 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkapple */ 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 @@ -843,15 +892,17 @@ declare module PlayFabClientModule { */ 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 }): 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 */ @@ -872,6 +923,11 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/characters/updatecharacterstatistics */ 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. @@ -903,25 +959,29 @@ declare module PlayFabClientModule { */ 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 }): 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 }): 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 }): 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 }): Promise>; @@ -1131,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,17 +1378,6 @@ declare module PlayFabClientModels { | "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 }; @@ -1433,12 +1490,6 @@ declare module PlayFabClientModels { } - export interface Container_Dictionary_String_String { - /** Content of data */ - Data?: { [key: string]: string | null }; - - } - type ContinentCode = "AF" | "AN" @@ -1446,7 +1497,8 @@ declare module PlayFabClientModels { | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" @@ -1697,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). */ @@ -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 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 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 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; } @@ -2022,20 +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 PlayStation :tm: Network information, if the user and PlayFab friend are both connected to PlayStation :tm: - * Network. + * 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[]; @@ -2043,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; } @@ -2056,63 +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; @@ -2284,10 +2299,6 @@ declare module PlayFabClientModels { * comma-separated list of platforms. */ ExternalPlatformFriends?: string; - /** 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; /** 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. */ @@ -2325,10 +2336,6 @@ declare module PlayFabClientModels { * comma-separated list of platforms. */ ExternalPlatformFriends?: string; - /** 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; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** @@ -2356,17 +2363,16 @@ declare module PlayFabClientModels { * comma-separated list of platforms. */ ExternalPlatformFriends?: string; - /** 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; /** * 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; } @@ -2579,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 }; @@ -2677,10 +2700,25 @@ 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. The array cannot exceed 2,000 - * in length. + * Array of unique Facebook identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed 25 in + * length. */ FacebookIDs: string[]; @@ -2710,7 +2748,7 @@ 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. - * The array cannot exceed 2,000 in length. + * The array cannot exceed 25 in length. */ GameCenterIDs: string[]; @@ -2740,7 +2778,7 @@ 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. The array - * cannot exceed 2,000 in length. + * cannot exceed 25 in length. */ GoogleIDs: string[]; @@ -2755,7 +2793,7 @@ 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 2,000 in length. + * The array cannot exceed 25 in length. */ GooglePlayGamesPlayerIDs: string[]; @@ -2770,7 +2808,7 @@ declare module PlayFabClientModels { export interface GetPlayFabIDsFromKongregateIDsRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Array of unique Kongregate identifiers (Kongregate's user_id) for which the title needs to get PlayFab identifiers. The - * array cannot exceed 2,000 in length. + * array cannot exceed 25 in length. */ KongregateIDs: string[]; @@ -2785,7 +2823,7 @@ 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 2,000 in length. + * cannot exceed 25 in length. */ NintendoAccountIds: string[]; @@ -2800,7 +2838,7 @@ declare module PlayFabClientModels { export interface GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Array of unique Nintendo Switch Device identifiers for which the title needs to get PlayFab identifiers. The array - * cannot exceed 2,000 in length. + * cannot exceed 25 in length. */ NintendoSwitchDeviceIds: string[]; @@ -2812,12 +2850,27 @@ 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 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 2,000 in length. + * cannot exceed 25 in length. */ PSNAccountIDs: string[]; @@ -2829,10 +2882,27 @@ declare module PlayFabClientModels { } + 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. The array - * cannot exceed 2,000 in length. + * cannot exceed 25 in length. */ SteamStringIDs?: string[]; @@ -2844,10 +2914,25 @@ 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. The array cannot - * exceed 2,000 in length. + * exceed 25 in length. */ TwitchIds: string[]; @@ -2864,7 +2949,7 @@ declare module PlayFabClientModels { Sandbox?: string; /** * Array of unique Xbox Live account identifiers for which the title needs to get PlayFab identifiers. The array cannot - * exceed 2,000 in length. + * exceed 25 in length. */ XboxLiveAccountIDs: string[]; @@ -3206,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; @@ -3234,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. */ @@ -3432,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; } @@ -3467,6 +3569,21 @@ declare module PlayFabClientModels { } + export interface ListPlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + + } + + 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; + + } + export interface ListUsersCharactersRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId?: string; @@ -3515,7 +3632,10 @@ declare module PlayFabClientModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface LoginResult extends PlayFabModule.IPlayFabResultCommon { /** @@ -3527,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; @@ -3549,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 @@ -3570,7 +3690,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 Apple after login. Represented as the identityToken field in the authorization @@ -3580,7 +3700,28 @@ declare module PlayFabClientModels { 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 + * 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. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3597,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 @@ -3633,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 @@ -3651,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 @@ -3675,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; @@ -3707,17 +3850,19 @@ 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. @@ -3731,11 +3876,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; /** * OAuth 2.0 server authentication code obtained on the client by calling the requestServerSideAccess() @@ -3759,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 @@ -3782,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 @@ -3803,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 @@ -3824,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 @@ -3847,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 @@ -3856,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 @@ -3890,13 +4035,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; /** 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 PlayStation :tm: Network when requesting an auth code */ RedirectUri?: string; @@ -3913,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. @@ -3939,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 @@ -3958,11 +4108,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 @@ -3983,57 +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; @@ -4106,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 @@ -4313,6 +4428,17 @@ declare module PlayFabClientModels { } + 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; @@ -4394,27 +4520,6 @@ declare module PlayFabClientModels { } - 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; @@ -4436,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 @@ -4640,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; } @@ -4737,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; @@ -4933,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 @@ -5192,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 }; @@ -5204,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 }; @@ -5277,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 */ @@ -5307,6 +5458,8 @@ declare module PlayFabClientModels { PrivateInfo?: UserPrivateAccountInfo; /** 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 */ @@ -5332,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; @@ -5459,7 +5620,10 @@ declare module PlayFabClientModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserPrivateAccountInfo { /** user email address */ @@ -5475,6 +5639,12 @@ declare module PlayFabClientModels { } + export interface UserServerCustomIdInfo { + /** Custom ID */ + CustomId?: string; + + } + export interface UserSettings { /** Boolean for whether this player is eligible for gathering device info. */ GatherDeviceInfo: boolean; @@ -5592,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 be44ea24..38ac8fc3 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabCloudScriptApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabCloudScriptApi.d.ts @@ -21,6 +21,11 @@ declare module PlayFabCloudScriptModule { * 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 @@ -56,6 +61,11 @@ declare module PlayFabCloudScriptModule { * 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 }): 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 @@ -108,7 +118,8 @@ declare module PlayFabCloudScriptModels { | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" @@ -359,7 +370,8 @@ declare module PlayFabCloudScriptModels { | "EH" | "YE" | "ZM" - | "ZW"; + | "ZW" + | "Unknown"; type EmailVerificationStatus = "Unverified" @@ -378,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; @@ -467,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; @@ -535,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 }; @@ -595,7 +625,10 @@ declare module PlayFabCloudScriptModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface LogStatement { /** Optional object accompanying the message as contextual information */ @@ -762,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 }; @@ -843,7 +888,8 @@ 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.). */ diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabDataApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabDataApi.d.ts index ec9909ef..287d8c21 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabDataApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabDataApi.d.ts @@ -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; @@ -258,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 index 8b299507..733020c5 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabEconomyApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabEconomyApi.d.ts @@ -5,17 +5,20 @@ declare module PlayFabEconomyModule { ForgetAllCredentials(): void; /** - * Add inventory items. + * 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. + * 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. + * 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>; @@ -25,7 +28,8 @@ declare module PlayFabEconomyModule { */ DeleteEntityItemReviews(request: PlayFabEconomyModels.DeleteEntityItemReviewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Delete an Inventory Collection + * 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>; @@ -40,37 +44,60 @@ declare module PlayFabEconomyModule { */ DeleteItem(request: PlayFabEconomyModels.DeleteItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Execute a list of Inventory Operations + * 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>; /** - * Gets the configuration for the catalog. + * 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. + * 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. + * 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. + * 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. + * 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 + * 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>; @@ -80,17 +107,29 @@ declare module PlayFabEconomyModule { */ GetInventoryItems(request: PlayFabEconomyModels.GetInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves an item from the public catalog. + * 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 + * 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. + * 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>; @@ -100,37 +139,41 @@ declare module PlayFabEconomyModule { */ 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. + * 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 reviews associated with the specified item. + * 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. + * 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>; /** - * Gets the access tokens. - * https://docs.microsoft.com/rest/api/playfab/economy/inventory/getmicrosoftstoreaccesstokens - */ - GetMicrosoftStoreAccessTokens(request: PlayFabEconomyModels.GetMicrosoftStoreAccessTokensRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; - /** - * Get transaction history. + * 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. + * 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 + * 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>; @@ -139,13 +182,18 @@ declare module PlayFabEconomyModule { * 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. + * 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>; @@ -175,18 +223,23 @@ declare module PlayFabEconomyModule { */ ReportItemReview(request: PlayFabEconomyModels.ReportItemReviewRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Creates or updates a review for the specified item. + * 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. + * 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. + * 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>; @@ -206,17 +259,24 @@ declare module PlayFabEconomyModule { */ TakedownItemReviews(request: PlayFabEconomyModels.TakedownItemReviewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Transfer inventory items. + * 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. + * 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. + * 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>; @@ -233,6 +293,8 @@ 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. */ @@ -243,15 +305,26 @@ declare module PlayFabEconomyModels { 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 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. */ + /** + * 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. */ + /** + * 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; @@ -261,7 +334,10 @@ declare module PlayFabEconomyModels { } export interface AddInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { - /** ETags are used for concurrency checking when updating resources. */ + /** + * 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; @@ -287,13 +363,17 @@ declare module PlayFabEconomyModels { } export interface CatalogConfig { - /** A list of player entity keys that will have admin permissions. */ + /** 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. */ + /** A list of deep link formats. Up to 10 can be added. */ DeepLinkFormats?: DeepLinkFormat[]; - /** A list of display properties to index. */ + /** + * 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; @@ -301,9 +381,14 @@ declare module PlayFabEconomyModels { Image?: ImageConfig; /** Flag defining whether catalog is enabled. */ IsCatalogEnabled: boolean; - /** A list of Platforms that can be applied to catalog items. */ + /** + * 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[]; - /** A set of player entity keys that are allowed to review content. */ + /** 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; @@ -311,9 +396,12 @@ declare module PlayFabEconomyModels { } export interface CatalogItem { - /** The alternate IDs associated with this item. */ + /** + * 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 contents associated with this item. */ + /** 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; @@ -324,13 +412,22 @@ declare module PlayFabEconomyModels { /** The set of platform specific deep links for this item. */ DeepLinks?: DeepLink[]; /** - * A dictionary of localized descriptions. Key is language code and localized string is the value. The neutral locale is - * required. + * 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. */ + /** + * 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. */ + /** 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; @@ -338,13 +435,22 @@ declare module PlayFabEconomyModels { ETag?: string; /** The unique ID of the item. */ Id?: string; - /** The images associated with this item. Images can be thumbnails or screenshots. */ + /** + * 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. */ + /** + * 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. */ + /** + * 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; @@ -352,22 +458,27 @@ declare module PlayFabEconomyModels { Moderation?: ModerationState; /** The platforms supported by this item. */ Platforms?: string[]; - /** The base price of this item. */ + /** 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. */ + /** 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. + * 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. */ + /** + * The high-level type of the item. The following item types are supported: bundle, catalogItem, currency, store, ugc, + * subscription. + */ Type?: string; } @@ -383,8 +494,12 @@ declare module PlayFabEconomyModels { } export interface CatalogPrice { - /** The amounts of the catalog item price. */ + /** 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; } @@ -410,7 +525,7 @@ declare module PlayFabEconomyModels { } export interface CatalogPriceOptions { - /** Prices of the catalog item. */ + /** Prices of the catalog item. An item can have up to 15 prices */ Prices?: CatalogPrice[]; } @@ -428,13 +543,25 @@ declare module PlayFabEconomyModels { } export interface CatalogSpecificConfig { - /** The set of content types that will be used for validation. */ + /** + * 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. */ + /** + * 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" @@ -450,23 +577,28 @@ declare module PlayFabEconomyModels { export interface Content { /** The content unique ID. */ Id?: string; - /** The maximum client version that this content is compatible with. */ + /** + * 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. */ + /** + * 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. */ + /** + * 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. */ + /** 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; } - export interface ContentFeed { - - } - type CountryCode = "AF" | "AX" @@ -716,14 +848,15 @@ declare module PlayFabEconomyModels { | "EH" | "YE" | "ZM" - | "ZW"; + | "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. */ + /** Whether the item should be published immediately. This value is optional, defaults to false. */ Publish: boolean; } @@ -783,7 +916,10 @@ declare module PlayFabEconomyModels { 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. */ + /** + * 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; } @@ -799,15 +935,24 @@ declare module PlayFabEconomyModels { } export interface DeleteInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The id of the entity's collection to perform this action on. (Default="default") */ + /** + * 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. */ + /** + * 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. */ + /** + * 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; @@ -864,26 +1009,38 @@ declare module PlayFabEconomyModels { } export interface ExecuteInventoryOperationsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The id of the entity's collection to perform this action on. (Default="default") */ + /** + * 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. */ + /** + * 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. */ + /** + * 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. + * 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. */ + /** + * 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; @@ -892,16 +1049,82 @@ declare module PlayFabEconomyModels { } + 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. */ + /** + * 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. */ + /** + * 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'. */ + /** + * 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; @@ -941,6 +1164,13 @@ declare module PlayFabEconomyModels { 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. */ @@ -964,13 +1194,16 @@ declare module PlayFabEconomyModels { * initial request. */ ContinuationToken?: string; - /** Number of items to retrieve. Maximum page size is 10. */ + /** 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 specify ItemType. */ + /** + * OData Filter to refine the items returned. CatalogItem properties 'type' can be used in the filter. For example: "type + * eq 'ugc'" + */ Filter?: string; } @@ -1004,7 +1237,7 @@ declare module PlayFabEconomyModels { 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. (Default = 10) */ + /** 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 }; @@ -1029,13 +1262,16 @@ declare module PlayFabEconomyModels { * initial request. */ ContinuationToken?: string; - /** Number of items to retrieve. Maximum page size is 50. (Default=10) */ + /** 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; - /** The filters to limit what is returned to the client. */ + /** + * 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; } @@ -1043,13 +1279,34 @@ declare module PlayFabEconomyModels { 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. */ + /** + * 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; @@ -1058,7 +1315,7 @@ declare module PlayFabEconomyModels { * initial request. */ ContinuationToken?: string; - /** Number of items to retrieve. Maximum page size is 25. */ + /** 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 }; @@ -1136,13 +1393,16 @@ declare module PlayFabEconomyModels { AlternateId?: CatalogAlternateId; /** An opaque token used to retrieve the next page of items, if any are available. */ ContinuationToken?: string; - /** Number of items to retrieve. Maximum page size is 200. If not specified, defaults to 10. */ + /** 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. */ + /** + * An OData orderBy used to order the results of the query. Possible values are Helpfulness, Rating, and Submitted (For + * example: "Submitted desc") + */ OrderBy?: string; } @@ -1195,36 +1455,33 @@ declare module PlayFabEconomyModels { } - export interface GetMicrosoftStoreAccessTokensRequest 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 GetMicrosoftStoreAccessTokensResponse extends PlayFabModule.IPlayFabResultCommon { - /** - * The collections access token for calling https://onestore.microsoft.com/b2b/keys/create/collections to obtain a - * CollectionsIdKey for the user - */ - CollectionsAccessToken?: string; - /** The date the collections access token expires */ - CollectionsAccessTokenExpirationDate: string; - - } - 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. (Default = 10) */ + /** + * 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 query. */ + /** + * 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; } @@ -1252,9 +1509,12 @@ declare module PlayFabEconomyModels { export interface Image { /** The image unique ID. */ Id?: string; - /** The client-defined tag associated with this image. */ + /** + * The client-defined tag associated with this image. Tags must be defined in the Catalog Config before being used in + * images + */ Tag?: string; - /** The client-defined type of this image. */ + /** 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; @@ -1262,13 +1522,16 @@ declare module PlayFabEconomyModels { } export interface ImageConfig { - /** The set of tags that will be used for validation. */ + /** + * 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. */ + /** Game specific properties for display purposes. The Display Properties field has a 1000 byte limit. */ DisplayProperties?: any; } @@ -1276,12 +1539,19 @@ declare module PlayFabEconomyModels { export interface InventoryItem { /** The amount of the item. */ Amount?: number; - /** Game specific properties for display purposes. This is an arbitrary JSON blob. */ + /** + * 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; @@ -1335,7 +1605,12 @@ declare module PlayFabEconomyModels { | "Approved" | "Rejected"; - export interface PayoutDetails { + 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[]; } @@ -1376,6 +1651,8 @@ declare module PlayFabEconomyModels { * 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. */ @@ -1393,7 +1670,10 @@ declare module PlayFabEconomyModels { 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 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 }; @@ -1402,11 +1682,19 @@ declare module PlayFabEconomyModels { * (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. */ + /** + * 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. */ + /** + * 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; @@ -1423,7 +1711,10 @@ declare module PlayFabEconomyModels { } export interface PurchaseInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { - /** ETags are used for concurrency checking when updating resources. */ + /** + * 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; @@ -1436,6 +1727,10 @@ declare module PlayFabEconomyModels { } + export interface PurchaseOverridesInfo { + + } + export interface PurchasePriceAmount { /** The amount of the inventory item to use in the purchase . */ Amount: number; @@ -1464,6 +1759,22 @@ declare module PlayFabEconomyModels { } + 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; @@ -1486,6 +1797,28 @@ declare module PlayFabEconomyModels { } + 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; @@ -1511,13 +1844,14 @@ declare module PlayFabEconomyModels { export interface RedeemMicrosoftStoreInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The id of the entity's collection to perform this action on. (Default="default") */ CollectionId?: string; - /** The OneStore Collections Id Key used for AAD authentication. */ - CollectionsIdKey?: 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. */ + /** + * Xbox Token used for delegated business partner authentication. Token provided by the Xbox Live SDK method + * GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). + */ XboxToken?: string; } @@ -1555,7 +1889,7 @@ declare module PlayFabEconomyModels { } export interface RedeemPlayStationStoreInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Authorization code provided by the PlayStation OAuth provider. */ + /** 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; @@ -1563,6 +1897,8 @@ declare module PlayFabEconomyModels { 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; @@ -1603,18 +1939,20 @@ declare module PlayFabEconomyModels { 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; - /** The ID of the offer being redeemed. */ - OfferId?: 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 ID of the offer being redeemed. */ - OfferId?: string; /** The timestamp for when the redeem was completed. */ SuccessTimestamp: string; @@ -1663,6 +2001,8 @@ declare module PlayFabEconomyModels { } 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. */ @@ -1679,8 +2019,6 @@ declare module PlayFabEconomyModels { Rating: number; /** The ID of the author of the review. */ ReviewerEntity?: EntityKey; - /** Deprecated. Use ReviewerEntity instead. This property will be removed in a future release. */ - ReviewerId?: string; /** The ID of the review. */ ReviewId?: string; /** The full text of this review. */ @@ -1692,6 +2030,12 @@ declare module PlayFabEconomyModels { } + 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; @@ -1720,24 +2064,23 @@ declare module PlayFabEconomyModels { } - export interface ScanResult { - /** The URL of the item which failed the scan. */ - Url?: 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. Maximum page size is 50. Default value is 10. */ + /** 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. */ + /** + * 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; - /** An OData orderBy used to order the results of the search query. */ + /** 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; @@ -1780,6 +2123,8 @@ declare module PlayFabEconomyModels { 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; @@ -1813,12 +2158,6 @@ declare module PlayFabEconomyModels { } - export interface SubscriptionDetails { - /** The length of time that the subscription will last in seconds. */ - DurationInSeconds: number; - - } - export interface SubtractInventoryItemsOperation { /** The amount to subtract from the current item amount. */ Amount?: number; @@ -1827,6 +2166,8 @@ declare module PlayFabEconomyModels { * false). */ DeleteEmptyStacks: boolean; + /** The duration to subtract from the current item expiration date. */ + DurationInSeconds?: number; /** The inventory item the operation applies to. */ Item?: InventoryItemReference; @@ -1835,7 +2176,10 @@ declare module PlayFabEconomyModels { 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 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 }; @@ -1844,11 +2188,19 @@ declare module PlayFabEconomyModels { * (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. */ + /** + * 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. */ + /** + * 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; @@ -1856,7 +2208,10 @@ declare module PlayFabEconomyModels { } export interface SubtractInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { - /** ETags are used for concurrency checking when updating resources. */ + /** + * 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; @@ -1880,6 +2235,10 @@ declare module PlayFabEconomyModels { 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. */ @@ -1899,9 +2258,19 @@ declare module PlayFabEconomyModels { } + 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. */ @@ -1914,6 +2283,12 @@ declare module PlayFabEconomyModels { } 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; @@ -1974,7 +2349,10 @@ declare module PlayFabEconomyModels { 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). */ + /** + * 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; @@ -1992,12 +2370,25 @@ declare module PlayFabEconomyModels { } export interface TransferInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { - /** ETags are used for concurrency checking when updating resources (after transferring from). */ + /** + * 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[]; @@ -2020,7 +2411,7 @@ declare module PlayFabEconomyModels { CustomTags?: { [key: string]: string | null }; /** Updated metadata describing the catalog item to be updated. */ Item?: CatalogItem; - /** Whether the item should be published immediately. */ + /** Whether the item should be published immediately. This value is optional, defaults to false. */ Publish: boolean; } @@ -2038,15 +2429,24 @@ declare module PlayFabEconomyModels { } export interface UpdateInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The id of the entity's collection to perform this action on. (Default="default") */ + /** + * 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. */ + /** + * 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. */ + /** + * 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; @@ -2054,7 +2454,10 @@ declare module PlayFabEconomyModels { } export interface UpdateInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { - /** ETags are used for concurrency checking when updating resources. */ + /** + * 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; diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabEventsApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabEventsApi.d.ts index 105a132a..6bcc412f 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabEventsApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabEventsApi.d.ts @@ -4,6 +4,56 @@ 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 @@ -20,6 +70,127 @@ declare module PlayFabEventsModule { } 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/PlayFabGroupsApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabGroupsApi.d.ts index 16f98aba..2ef182c1 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabGroupsApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabGroupsApi.d.ts @@ -600,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 */ @@ -628,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/PlayFabMatchmakerApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabMatchmakerApi.d.ts deleted file mode 100644 index 63daa491..00000000 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabMatchmakerApi.d.ts +++ /dev/null @@ -1,169 +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 }): Promise>; - /** - * 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 }): Promise>; - /** - * 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 }): Promise>; - /** - * 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 }): Promise>; - - } -} - -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 { - - } - - 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 658c1631..d2ff0a24 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabMultiplayerApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabMultiplayerApi.d.ts @@ -117,6 +117,11 @@ declare module PlayFabMultiplayerModule { * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deleteremoteuser */ 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 @@ -239,6 +244,11 @@ declare module PlayFabMultiplayerModule { * 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 @@ -249,6 +259,11 @@ declare module PlayFabMultiplayerModule { * 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 @@ -312,6 +327,11 @@ declare module PlayFabMultiplayerModule { * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listqosserversfortitle */ 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 @@ -343,6 +363,11 @@ declare module PlayFabMultiplayerModule { * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/requestmultiplayerserver */ 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 @@ -408,11 +433,23 @@ declare module PlayFabMultiplayerModule { * 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 }): 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>; } } @@ -483,7 +520,11 @@ declare module PlayFabMultiplayerModels { | "WestUs2" | "CentralIndia" | "UaeNorth" - | "UkSouth"; + | "UkSouth" + | "SwedenCentral" + | "CanadaCentral" + | "MexicoCentral" + | "WestUs3"; type AzureVmFamily = "A" @@ -494,6 +535,8 @@ declare module PlayFabMultiplayerModels { | "Fsv2" | "Dasv4" | "Dav4" + | "Dadsv5" + | "Dadsv6" | "Eav4" | "Easv4" | "Ev4" @@ -503,7 +546,17 @@ declare module PlayFabMultiplayerModels { | "NCasT4_v3" | "Ddv4" | "Ddsv4" - | "HBv3"; + | "HBv3" + | "Ddv5" + | "Ddsv5" + | "Ddsv6" + | "Fasv6" + | "Fasv7" + | "Fadsv7" + | "Eadsv5" + | "Eadsv6" + | "Eadsv7" + | "Dadsv7"; type AzureVmSize = "Standard_A1" @@ -532,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" @@ -540,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" @@ -548,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" @@ -570,7 +659,21 @@ declare module PlayFabMultiplayerModels { | "Standard_HB120_32rs_v3" | "Standard_HB120_64rs_v3" | "Standard_HB120_96rs_v3" - | "Standard_HB120rs_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. */ @@ -656,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; @@ -670,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; @@ -807,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; /** @@ -824,11 +929,6 @@ declare module PlayFabMultiplayerModels { RegionConfigurations: BuildRegionParams[]; /** The resource constraints to apply to each server on the VM (EXPERIMENTAL API) */ ServerResourceConstraints?: ServerResourceConstraintParams; - /** - * 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 */ @@ -858,6 +958,8 @@ 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. */ @@ -904,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. @@ -928,11 +1032,6 @@ declare module PlayFabMultiplayerModels { 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 */ @@ -960,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. @@ -1011,18 +1112,22 @@ 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 @@ -1043,11 +1148,6 @@ 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 */ @@ -1073,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. @@ -1085,6 +1187,8 @@ 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 */ @@ -1128,7 +1232,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 private key-value pairs which are only visible to members of the lobby. At most 30 key-value pairs may be stored + * 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. */ @@ -1151,6 +1255,12 @@ declare module PlayFabMultiplayerModels { * 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 @@ -1404,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; @@ -1440,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%, @@ -1496,10 +1625,6 @@ declare module PlayFabMultiplayerModels { 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 }; - /** Controls whether this query should link to friends made on the Facebook network. Defaults to false */ - ExcludeFacebookFriends?: boolean; - /** Controls whether this query should link to friends made on the Steam network. Defaults to false */ - ExcludeSteamFriends?: boolean; /** Indicates which other platforms' friends this query should link to. */ ExternalPlatformFriends?: string; /** @@ -1508,20 +1633,25 @@ declare module PlayFabMultiplayerModels { * (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/membershipLock (must equal 'Unlocked' or 'Locked'), lobby/amOwner (required to equal "true"), lobby/amMember - * (required to equal "true"). + * 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" 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 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. */ + /** + * 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; } @@ -1543,15 +1673,16 @@ declare module PlayFabMultiplayerModels { * (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/membershipLock (must equal 'Unlocked' or 'Locked'), lobby/amOwner (required to equal "true"), lobby/amMember - * (required to equal "true"). + * 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" 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 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. */ @@ -1620,6 +1751,18 @@ 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 }; @@ -1721,6 +1864,8 @@ declare module PlayFabMultiplayerModels { StartMultiplayerServerCommand?: string; /** The VM size the build was created on. */ VmSize?: string; + /** The configuration for the VmStartupScript feature for the build */ + VmStartupScriptConfiguration?: VmStartupScriptConfiguration; } @@ -1784,7 +1929,10 @@ 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; @@ -1864,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. */ @@ -2061,7 +2211,7 @@ declare module PlayFabMultiplayerModels { MaxPlayers: number; /** * The private key-value pairs used by the member to communicate information to other members and the owner. Visible to all - * members of the lobby. At most 30 key-value pairs may be stored here, keys are limited to 30 characters and values to + * 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 }; @@ -2076,6 +2226,12 @@ declare module PlayFabMultiplayerModels { * 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, @@ -2087,6 +2243,35 @@ declare module PlayFabMultiplayerModels { } + 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; @@ -2094,7 +2279,7 @@ declare module PlayFabMultiplayerModels { 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 - * members of the lobby. At most 30 key-value pairs may be stored here, keys are limited to 30 characters and values to + * 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 }; @@ -2125,6 +2310,19 @@ 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 }; @@ -2294,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[]; @@ -2318,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; @@ -2379,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; } @@ -2392,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; @@ -2473,8 +2701,15 @@ declare module PlayFabMultiplayerModels { * 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; @@ -2484,6 +2719,16 @@ declare module PlayFabMultiplayerModels { } + 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 @@ -2707,6 +2952,45 @@ declare module PlayFabMultiplayerModels { } + 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; @@ -2721,6 +3005,16 @@ declare module PlayFabMultiplayerModels { | "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; @@ -2821,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. */ @@ -2837,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. */ @@ -2856,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 }; @@ -2872,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; @@ -2899,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; @@ -2908,6 +3260,8 @@ declare module PlayFabMultiplayerModels { Ports?: Port[]; /** The server's region. */ Region?: string; + /** The string server ID of the multiplayer server generated by PlayFab. */ + ServerId?: string; } @@ -2964,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; } @@ -3045,11 +3399,18 @@ declare module PlayFabMultiplayerModels { EntityKey: EntityKey; /** Opaque string, given to a client upon creating a connection with PubSub. */ PubSubConnectionHandle: string; - /** The name of the resource to subscribe to. */ + /** + * 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. */ + /** + * 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; } @@ -3255,6 +3616,33 @@ 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 @@ -3267,7 +3655,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 private key-value pairs which are only visible to members of the lobby. Optional. Sets or updates key-value pairs on + * 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. @@ -3286,9 +3674,9 @@ declare module PlayFabMultiplayerModels { /** * 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 members of 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. + * 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 }; /** @@ -3316,6 +3704,12 @@ declare module PlayFabMultiplayerModels { * 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 @@ -3337,11 +3731,23 @@ declare module PlayFabMultiplayerModels { 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; @@ -3353,17 +3759,37 @@ 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; diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabProfilesApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabProfilesApi.d.ts index ca19b112..ce708bfc 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabProfilesApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabProfilesApi.d.ts @@ -24,6 +24,16 @@ declare module PlayFabProfilesModule { * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/gettitleplayersfrommasterplayeraccountids */ 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 @@ -119,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. */ @@ -132,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. @@ -152,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; @@ -186,6 +184,8 @@ declare module PlayFabProfilesModels { DataAsObject?: boolean; /** 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; } @@ -205,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; } @@ -246,19 +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[]; } @@ -303,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 601cf50c..47884a40 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabServerApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabServerApi.d.ts @@ -5,7 +5,8 @@ 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 }): Promise>; @@ -22,6 +23,11 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/account-management/addgenericid */ 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 @@ -36,7 +42,8 @@ declare module PlayFabServerModule { */ 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 }): Promise>; @@ -51,12 +58,14 @@ declare module PlayFabServerModule { */ 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 }): 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 }): Promise>; @@ -78,6 +87,11 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/account-management/deleteplayer */ 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 @@ -91,13 +105,10 @@ declare module PlayFabServerModule { */ 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 }): Promise>; - /** - * 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 }): Promise>; @@ -107,9 +118,17 @@ declare module PlayFabServerModule { * 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 }): 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 }): Promise>; @@ -120,7 +139,8 @@ declare module PlayFabServerModule { */ 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 }): Promise>; @@ -135,7 +155,8 @@ declare module PlayFabServerModule { */ 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 }): Promise>; @@ -202,6 +223,11 @@ declare module PlayFabServerModule { * 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 }): 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 @@ -212,15 +238,6 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/playstream/getplayersegments */ GetPlayerSegments(request: PlayFabServerModels.GetPlayersSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; - /** - * 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 }): 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 @@ -236,6 +253,11 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/playstream/getplayertags */ 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 @@ -263,17 +285,40 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromnintendoswitchdeviceids */ GetPlayFabIDsFromNintendoSwitchDeviceIds(request: PlayFabServerModels.GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * 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 }): 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 }): 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: @@ -292,11 +337,25 @@ declare module PlayFabServerModule { */ 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 }): 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 @@ -310,7 +369,9 @@ declare module PlayFabServerModule { */ 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 }): Promise>; @@ -355,7 +416,8 @@ declare module PlayFabServerModule { */ 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 }): Promise>; @@ -386,25 +448,38 @@ declare module PlayFabServerModule { */ 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 }): 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 }): 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 }): 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 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 @@ -415,16 +490,70 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/account-management/linkpsnaccount */ 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 }): 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 }): 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. @@ -437,6 +566,11 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithsteamid */ 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 @@ -450,51 +584,36 @@ declare module PlayFabServerModule { */ 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 }): 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 }): 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 }): 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 }): Promise>; /** - * 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 }): 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 }): Promise>; - /** - * 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 }): Promise>; - /** - * 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 }): Promise>; - /** - * 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 }): Promise>; /** * Removes the specified friend from the the user's friend list * https://docs.microsoft.com/rest/api/playfab/server/friend-list-management/removefriend @@ -535,12 +654,14 @@ declare module PlayFabServerModule { */ 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 }): 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 }): Promise>; @@ -577,21 +698,6 @@ declare module PlayFabServerModule { * 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 }): Promise>; - /** - * 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 }): Promise>; - /** - * 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 }): Promise>; - /** - * 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 }): 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. @@ -614,17 +720,44 @@ declare module PlayFabServerModule { */ 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 }): 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 }): 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 @@ -645,22 +778,34 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkservercustomid */ 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 }): 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 }): 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 */ @@ -695,6 +840,11 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/characters/updatecharacterstatistics */ 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 @@ -720,7 +870,8 @@ declare module PlayFabServerModule { */ 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 }): Promise>; @@ -764,16 +915,6 @@ declare module PlayFabServerModule { } 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; @@ -823,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 }; @@ -928,6 +1083,8 @@ declare module PlayFabServerModels { 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; } @@ -940,6 +1097,8 @@ declare module PlayFabServerModels { 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; } @@ -957,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 @@ -1099,12 +1266,6 @@ declare module PlayFabServerModels { } - type ChurnRiskLevel = "NoData" - - | "LowRisk" - | "MediumRisk" - | "HighRisk"; - type CloudScriptRevisionOption = "Live" | "Latest" @@ -1132,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; @@ -1159,7 +1310,8 @@ declare module PlayFabServerModels { | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" @@ -1410,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). */ @@ -1588,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; @@ -1607,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; @@ -1633,18 +1830,6 @@ 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" @@ -1756,6 +1941,20 @@ 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" @@ -1781,20 +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 PlayStation :tm: Network information, if the user and PlayFab friend are both connected to PlayStation :tm: - * Network. + * 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[]; @@ -1802,15 +2004,11 @@ 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" @@ -1916,7 +2114,6 @@ declare module PlayFabServerModels { | "UnableToConnectToDatabase" | "InternalServerError" | "InvalidReportDate" - | "ReportNotAvailable" | "DatabaseThroughputExceeded" | "InvalidGameTicket" | "ExpiredGameTicket" @@ -2292,7 +2489,6 @@ declare module PlayFabServerModels { | "InsightsManagementGetOperationStatusInvalidParameter" | "DuplicatePurchaseTransactionId" | "EvaluationModePlayerCountExceeded" - | "GetPlayersInSegmentRateLimitExceeded" | "CloudScriptFunctionNameSizeExceeded" | "PaidInsightsFeaturesNotEnabled" | "CloudScriptAzureFunctionsQueueRequestError" @@ -2355,6 +2551,66 @@ declare module PlayFabServerModels { | "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" @@ -2398,6 +2654,8 @@ declare module PlayFabServerModels { | "CatalogItemTypeInvalid" | "CatalogBadRequest" | "CatalogTooManyRequests" + | "InvalidCatalogItemConfiguration" + | "LegacyEconomyDisabled" | "ExportInvalidStatusUpdate" | "ExportInvalidPrefix" | "ExportBlobContainerDoesNotExist" @@ -2444,6 +2702,7 @@ declare module PlayFabServerModels { | "MultiplayerServerBuildReferencedByMatchmakingQueue" | "MultiplayerServerBuildReferencedByBuildAlias" | "MultiplayerServerBuildAliasReferencedByMatchmakingQueue" + | "PartySerializationError" | "ExperimentationExperimentStopped" | "ExperimentationExperimentRunning" | "ExperimentationExperimentNotFound" @@ -2467,6 +2726,10 @@ declare module PlayFabServerModels { | "ExperimentationExclusionGroupCannotDelete" | "ExperimentationExclusionGroupInvalidTrafficAllocation" | "ExperimentationExclusionGroupInvalidName" + | "ExperimentationLegacyExperimentInvalidOperation" + | "ExperimentationExperimentStopFailed" + | "ExperimentationExperimentDeleteFailed" + | "ExperimentationExperimentStartFailed" | "MaxActionDepthExceeded" | "TitleNotOnUpdatedPricingPlan" | "SegmentManagementTitleNotInFlight" @@ -2483,8 +2746,12 @@ declare module PlayFabServerModels { | "AsyncExportNotInFlight" | "AsyncExportNotFound" | "AsyncExportRateLimitExceeded" + | "AnalyticsSegmentCountOverLimit" + | "GetSegmentPlayerCountNotInFlight" + | "GetSegmentPlayerCountRateLimitExceeded" | "SnapshotNotFound" | "InventoryApiNotImplemented" + | "InventoryCollectionDeletionDisallowed" | "LobbyDoesNotExist" | "LobbyRateLimitExceeded" | "LobbyPlayerAlreadyJoined" @@ -2497,10 +2764,23 @@ declare module PlayFabServerModels { | "LobbyNewOwnerMustBeConnected" | "LobbyCurrentOwnerStillConnected" | "LobbyMemberIsNotOwner" + | "LobbyServerMismatch" + | "LobbyServerNotFound" + | "LobbyDifferentServerAlreadyJoined" + | "LobbyServerAlreadyJoined" + | "LobbyIsNotClientOwned" + | "LobbyDoesNotUseConnections" | "EventSamplingInvalidRatio" | "EventSamplingInvalidEventNamespace" | "EventSamplingInvalidEventName" | "EventSamplingRatioNotFound" + | "TelemetryKeyNotFound" + | "TelemetryKeyInvalidName" + | "TelemetryKeyAlreadyExists" + | "TelemetryKeyInvalid" + | "TelemetryKeyCountOverLimit" + | "TelemetryKeyDeactivated" + | "TelemetryKeyLongInsightsRetentionNotAllowed" | "EventSinkConnectionInvalid" | "EventSinkConnectionUnauthorized" | "EventSinkRegionInvalid" @@ -2513,9 +2793,170 @@ declare module PlayFabServerModels { | "EventSinkTenantNotFound" | "EventSinkAadNotFound" | "EventSinkDatabaseNotFound" + | "EventSinkTitleUnauthorized" + | "EventSinkInsufficientRoleAssignment" + | "EventSinkContainerNotFound" + | "EventSinkTenantIdInvalid" + | "EventSinkResourceMisconfigured" + | "EventSinkAccessDenied" + | "EventSinkWriteConflict" + | "EventSinkResourceNotFound" + | "EventSinkResourceFeatureNotSupported" + | "EventSinkBucketNameInvalid" + | "EventSinkResourceUnavailable" | "OperationCanceled" | "InvalidDisplayNameRandomSuffixLength" - | "AllowNonUniquePlayerDisplayNamesDisableNotAllowed"; + | "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. */ @@ -2672,10 +3113,6 @@ declare module PlayFabServerModels { * comma-separated list of platforms. */ ExternalPlatformFriends?: string; - /** 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; /** Maximum number of entries to retrieve. */ MaxResultsCount: number; /** The player whose friend leaderboard to get */ @@ -2705,10 +3142,6 @@ declare module PlayFabServerModels { * comma-separated list of platforms. */ ExternalPlatformFriends?: string; - /** 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; /** PlayFab identifier of the player whose friend list to get. */ PlayFabId: string; /** @@ -2717,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; } @@ -2908,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 }; @@ -2937,39 +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 }; - /** - * If set to true, the profiles are loaded asynchronously and the response will include a continuation token and - * approximate profile count until the first batch of profiles is loaded. Use this parameter to help avoid network - * timeouts. - */ - GetProfilesAsync?: boolean; - /** - * Maximum is 10,000. The value 0 will prevent loading any profiles and return only the count of profiles matching this - * segment. - */ - 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; } @@ -3036,10 +3471,25 @@ 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. The array cannot exceed 2,000 - * in length. + * Array of unique Facebook identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed 25 in + * length. */ FacebookIDs: string[]; @@ -3084,7 +3534,7 @@ 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 2,000 in length. + * cannot exceed 25 in length. */ NintendoAccountIds: string[]; @@ -3099,7 +3549,7 @@ declare module PlayFabServerModels { export interface GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Array of unique Nintendo Switch Device identifiers for which the title needs to get PlayFab identifiers. The array - * cannot exceed 2,000 in length. + * cannot exceed 25 in length. */ NintendoSwitchDeviceIds: string[]; @@ -3111,12 +3561,27 @@ 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 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 2,000 in length. + * cannot exceed 25 in length. */ PSNAccountIDs: string[]; @@ -3128,10 +3593,42 @@ declare module PlayFabServerModels { } + 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 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 2,000 in length. + * cannot exceed 25 in length. */ SteamStringIDs?: string[]; @@ -3143,10 +3640,25 @@ declare module PlayFabServerModels { } + 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 2,000 in length. + * exceed 25 in length. */ TwitchIds: string[]; @@ -3163,7 +3675,7 @@ declare module PlayFabServerModels { Sandbox?: string; /** * Array of unique Xbox Live account identifiers for which the title needs to get PlayFab identifiers. The array cannot - * exceed 2,000 in length. + * exceed 25 in length. */ XboxLiveAccountIDs: string[]; @@ -3204,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; @@ -3572,12 +4096,24 @@ declare module PlayFabServerModels { } - export interface LinkedPlatformAccountModel { - /** Linked account email of the user on the platform, if available */ - Email?: string; - /** Authentication platform */ - Platform?: string; - /** Unique account identifier of the user on the platform */ + 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; + /** Authentication platform */ + Platform?: string; + /** Unique account identifier of the user on the platform */ PlatformUserId?: string; /** Linked account username of the user on the platform, if available */ Username?: string; @@ -3599,6 +4135,18 @@ declare module PlayFabServerModels { } + 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 }; @@ -3635,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 }; @@ -3651,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; @@ -3667,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; @@ -3723,7 +4350,82 @@ declare module PlayFabServerModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "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. */ @@ -3732,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; } @@ -3746,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; @@ -3760,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; } @@ -3909,28 +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; @@ -3945,80 +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; - /** The prediction of the player to churn within the next seven days. */ - ChurnPrediction?: 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[]; @@ -4108,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; @@ -4147,6 +4773,17 @@ declare module PlayFabServerModels { } + 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; @@ -4167,14 +4804,6 @@ declare module PlayFabServerModels { | "GoogleCloudMessaging"; - export interface PushNotificationRegistration { - /** Notification configured endpoint */ - NotificationEndpointARN?: string; - /** Push notification platform */ - Platform?: string; - - } - export interface PushNotificationRegistrationModel { /** Notification configured endpoint */ NotificationEndpointARN?: string; @@ -4213,84 +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; @@ -4552,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; @@ -4575,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; @@ -4718,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; @@ -4848,6 +5368,64 @@ declare module PlayFabServerModels { } + 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 }; @@ -4896,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; } @@ -4980,6 +5583,8 @@ declare module PlayFabServerModels { 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; } @@ -5042,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 }; @@ -5061,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 }; @@ -5159,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 */ @@ -5189,6 +5830,8 @@ declare module PlayFabServerModels { PrivateInfo?: UserPrivateAccountInfo; /** 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 */ @@ -5214,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; @@ -5251,6 +5902,11 @@ declare module PlayFabServerModels { } + type UserFamilyType = "None" + + | "Xbox" + | "Steam"; + export interface UserGameCenterInfo { /** Gamecenter identifier */ GameCenterId?: string; @@ -5341,7 +5997,10 @@ declare module PlayFabServerModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserPrivateAccountInfo { /** user email address */ @@ -5357,6 +6016,12 @@ declare module PlayFabServerModels { } + export interface UserServerCustomIdInfo { + /** Custom ID */ + CustomId?: string; + + } + export interface UserSettings { /** Boolean for whether this player is eligible for gathering device info. */ GatherDeviceInfo: boolean; diff --git a/PlayFabSdk/src/Typings/PlayFab/Playfab.d.ts b/PlayFabSdk/src/Typings/PlayFab/Playfab.d.ts index 1e1ad849..441d70ef 100644 --- a/PlayFabSdk/src/Typings/PlayFab/Playfab.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/Playfab.d.ts @@ -1,6 +1,5 @@ /// /// -/// /// /// /// @@ -10,9 +9,11 @@ /// /// /// +/// /// /// /// +/// declare module PlayFabModule { export interface ISettings { @@ -48,7 +49,6 @@ declare var PlayFab: { settings: PlayFabModule.ISettings; AdminApi: PlayFabAdminModule.IPlayFabAdmin; ClientApi: PlayFabClientModule.IPlayFabClient; - MatchmakerApi: PlayFabMatchmakerModule.IPlayFabMatchmaker; ServerApi: PlayFabServerModule.IPlayFabServer; AuthenticationApi: PlayFabAuthenticationModule.IPlayFabAuthentication; CloudScriptApi: PlayFabCloudScriptModule.IPlayFabCloudScript; @@ -58,15 +58,16 @@ declare var PlayFab: { 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; @@ -76,7 +77,9 @@ 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 13c18c2d..3d733211 100644 --- a/PlayFabTestingExample/PlayFabApiTest.csproj +++ b/PlayFabTestingExample/PlayFabApiTest.csproj @@ -26,7 +26,6 @@ - @@ -36,9 +35,11 @@ + + @@ -46,7 +47,6 @@ - @@ -56,9 +56,11 @@ + + diff --git a/PlayFabTestingExample/index.html b/PlayFabTestingExample/index.html index d58cc3c7..a60aec41 100644 --- a/PlayFabTestingExample/index.html +++ b/PlayFabTestingExample/index.html @@ -12,7 +12,6 @@ - @@ -22,9 +21,11 @@ + + 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 34735fc4..5b4f9aef 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabAdminApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabAdminApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -309,6 +309,10 @@ 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); }, @@ -321,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); }, @@ -389,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); }, @@ -417,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,6 +449,10 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetSegmentExport", request, "X-SecretKey", callback, customData, extraHeaders); }, + GetSegmentPlayerCount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetSegmentPlayerCount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + GetSegments: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/GetSegments", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -525,12 +529,12 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListOpenIdConnection", request, "X-SecretKey", callback, customData, extraHeaders); }, - ListVirtualCurrencyTypes: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListVirtualCurrencyTypes", request, "X-SecretKey", callback, customData, extraHeaders); + ListPlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListPlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); }, - ModifyServerBuild: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ModifyServerBuild", request, "X-SecretKey", callback, customData, extraHeaders); + ListVirtualCurrencyTypes: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListVirtualCurrencyTypes", request, "X-SecretKey", callback, customData, extraHeaders); }, RefundPurchase: function (request, callback, customData, extraHeaders) { @@ -645,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); }, @@ -701,6 +709,10 @@ PlayFab.AdminApi = { 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 ed300c52..9ec5b672 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabAuthenticationApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabAuthenticationApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabClientApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabClientApi.js index 83ce1509..d079ce97 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabClientApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabClientApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -313,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); }, @@ -357,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); }, @@ -373,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); }, @@ -405,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); }, @@ -429,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); }, @@ -465,14 +469,26 @@ PlayFab.ClientApi = { 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); }, @@ -549,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); }, @@ -609,6 +629,10 @@ PlayFab.ClientApi = { 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 @@ -657,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 @@ -1065,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); }, @@ -1099,8 +1143,15 @@ PlayFab.ClientApi = { // 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; + 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); @@ -1172,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); }, @@ -1252,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); }, diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabCloudScriptApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabCloudScriptApi.js index af3b754a..950a2bf7 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabCloudScriptApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabCloudScriptApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -253,6 +253,10 @@ PlayFab.CloudScriptApi = { 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); }, @@ -281,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); }, diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabDataApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabDataApi.js index 44d9841f..9b7aebbc 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabDataApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabDataApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabEconomyApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabEconomyApi.js index fc2cedf9..f0d972c4 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabEconomyApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabEconomyApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -273,6 +273,10 @@ PlayFab.EconomyApi = { 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); }, @@ -301,6 +305,10 @@ PlayFab.EconomyApi = { 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); }, @@ -329,10 +337,6 @@ PlayFab.EconomyApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Catalog/GetItems", request, "X-EntityToken", callback, customData, extraHeaders); }, - GetMicrosoftStoreAccessTokens: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/GetMicrosoftStoreAccessTokens", request, "X-EntityToken", callback, customData, extraHeaders); - }, - GetTransactionHistory: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Inventory/GetTransactionHistory", request, "X-EntityToken", callback, customData, extraHeaders); }, @@ -349,6 +353,10 @@ PlayFab.EconomyApi = { 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); }, diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabEventsApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabEventsApi.js index 4855b6b4..3e2f69e6 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabEventsApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabEventsApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -241,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); }, diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabExperimentationApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabExperimentationApi.js index c5a54bd4..83c1e8f5 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabExperimentationApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabExperimentationApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabGroupsApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabGroupsApi.js index 9327f30a..a7bc069a 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabGroupsApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabGroupsApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabInsightsApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabInsightsApi.js index d7f1560a..82e192c3 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabInsightsApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabInsightsApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabLocalizationApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabLocalizationApi.js index c7d416fc..4d6e370f 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabLocalizationApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabLocalizationApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabMultiplayerApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabMultiplayerApi.js index 4dcbae84..5296503e 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabMultiplayerApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabMultiplayerApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -329,6 +329,10 @@ PlayFab.MultiplayerApi = { 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); }, @@ -425,6 +429,10 @@ PlayFab.MultiplayerApi = { 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); }, @@ -433,6 +441,10 @@ PlayFab.MultiplayerApi = { 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); }, @@ -481,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); }, @@ -505,6 +521,10 @@ PlayFab.MultiplayerApi = { 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); }, @@ -557,10 +577,18 @@ PlayFab.MultiplayerApi = { 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 f59bd64a..4458cc60 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabProfilesApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabProfilesApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -257,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); }, 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 626da0bf..18a54ef9 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabMatchmakerApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabProgressionApi.js @@ -1,4 +1,4 @@ -/// +/// var PlayFab = typeof PlayFab != "undefined" ? PlayFab : {}; @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -235,29 +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); }, - PlayerJoined: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/PlayerJoined", request, "X-SecretKey", callback, customData, extraHeaders); + CreateStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/CreateStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); }, - PlayerLeft: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/PlayerLeft", request, "X-SecretKey", callback, customData, extraHeaders); + DeleteLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/DeleteLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); }, - UserInfo: function (request, callback, customData, extraHeaders) { - return PlayFab._internalSettings.ExecuteRequestWrapper("/Matchmaker/UserInfo", request, "X-SecretKey", 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); + }, + + UnlinkAggregationSourceFromStatistic: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/UnlinkAggregationSourceFromStatistic", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UnlinkLeaderboardFromStatistic: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/UnlinkLeaderboardFromStatistic", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + UpdateLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/UpdateLeaderboardDefinition", request, "X-EntityToken", 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 f398ff21..b57d0ebd 100644 --- a/PlayFabTestingExample/src/PlayFab/PlayFabServerApi.js +++ b/PlayFabTestingExample/src/PlayFab/PlayFabServerApi.js @@ -14,9 +14,9 @@ if(!PlayFab.settings) { if(!PlayFab._internalSettings) { PlayFab._internalSettings = { entityToken: null, - sdkVersion: "1.137.230220", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.137.230220" + 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 @@ -223,8 +223,8 @@ if(!PlayFab._internalSettings) { } } -PlayFab.buildIdentifier = "adobuild_javascriptsdk_118"; -PlayFab.sdkVersion = "1.137.230220"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -253,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); }, @@ -293,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); }, @@ -301,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); }, @@ -313,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); }, @@ -381,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); }, @@ -389,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); }, @@ -405,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,14 +437,30 @@ PlayFab.ServerApi = { 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); }, @@ -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,10 +565,18 @@ 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); }, @@ -541,14 +585,54 @@ PlayFab.ServerApi = { 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); }, @@ -557,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); }, @@ -581,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); }, @@ -661,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); }, @@ -697,6 +757,26 @@ 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); }, @@ -713,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); }, @@ -749,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); }, diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFab.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFab.d.ts index 1e1ad849..441d70ef 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFab.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFab.d.ts @@ -1,6 +1,5 @@ /// /// -/// /// /// /// @@ -10,9 +9,11 @@ /// /// /// +/// /// /// /// +/// declare module PlayFabModule { export interface ISettings { @@ -48,7 +49,6 @@ declare var PlayFab: { settings: PlayFabModule.ISettings; AdminApi: PlayFabAdminModule.IPlayFabAdmin; ClientApi: PlayFabClientModule.IPlayFabClient; - MatchmakerApi: PlayFabMatchmakerModule.IPlayFabMatchmaker; ServerApi: PlayFabServerModule.IPlayFabServer; AuthenticationApi: PlayFabAuthenticationModule.IPlayFabAuthentication; CloudScriptApi: PlayFabCloudScriptModule.IPlayFabCloudScript; @@ -58,15 +58,16 @@ declare var PlayFab: { 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; @@ -76,7 +77,9 @@ 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 13a109ea..8a96312d 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabAdminApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabAdminApi.d.ts @@ -25,23 +25,26 @@ declare module PlayFabAdminModule { */ AddPlayerTag(request: PlayFabAdminModels.AddPlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * 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 }): 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 }): 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 }): 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 }): Promise>; @@ -93,6 +96,11 @@ declare module PlayFabAdminModule { * https://docs.microsoft.com/rest/api/playfab/admin/account-management/deletemasterplayeraccount */ 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 @@ -108,6 +116,11 @@ declare module PlayFabAdminModule { * https://docs.microsoft.com/rest/api/playfab/admin/account-management/deleteplayer */ 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. @@ -120,7 +133,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -158,12 +172,14 @@ declare module PlayFabAdminModule { 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 }): 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 }): Promise>; @@ -200,21 +216,16 @@ declare module PlayFabAdminModule { * 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 }): Promise>; - /** - * 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 }): Promise>; - /** - * 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 }): 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 }): 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 @@ -235,15 +246,6 @@ declare module PlayFabAdminModule { * https://docs.microsoft.com/rest/api/playfab/admin/authentication/getplayersharedsecrets */ GetPlayerSharedSecrets(request: PlayFabAdminModels.GetPlayerSharedSecretsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; - /** - * 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 }): Promise>; /** * Retrieves the configuration information for all player statistics defined in the title, regardless of whether they have * a reset interval. @@ -271,7 +273,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -283,13 +286,19 @@ declare module PlayFabAdminModule { * https://docs.microsoft.com/rest/api/playfab/admin/playstream/getsegmentexport */ GetSegmentExport(request: PlayFabAdminModels.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/admin/playstream/getsegmentplayercount + */ + GetSegmentPlayerCount(request: PlayFabAdminModels.GetSegmentPlayerCountRequest, 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 */ 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 }): Promise>; @@ -334,7 +343,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -359,12 +369,14 @@ declare module PlayFabAdminModule { */ 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 }): 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 }): Promise>; @@ -379,17 +391,19 @@ declare module PlayFabAdminModule { */ ListOpenIdConnection(request: PlayFabAdminModels.ListOpenIdConnectionRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retuns the list of all defined virtual currencies for the title - * https://docs.microsoft.com/rest/api/playfab/admin/title-wide-data-management/listvirtualcurrencytypes + * Retrieves title-specific custom property values for a player. + * https://docs.microsoft.com/rest/api/playfab/admin/player-data-management/listplayercustomproperties */ - ListVirtualCurrencyTypes(request: PlayFabAdminModels.ListVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + ListPlayerCustomProperties(request: PlayFabAdminModels.ListPlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Updates the build details for the specified game server executable - * https://docs.microsoft.com/rest/api/playfab/admin/custom-server-management/modifyserverbuild + * _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 */ - ModifyServerBuild(request: PlayFabAdminModels.ModifyServerBuildRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + ListVirtualCurrencyTypes(request: PlayFabAdminModels.ListVirtualCurrencyTypesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * 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 }): Promise>; @@ -399,7 +413,8 @@ declare module PlayFabAdminModule { */ RemovePlayerTag(request: PlayFabAdminModels.RemovePlayerTagRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * 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 }): Promise>; @@ -419,7 +434,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -434,12 +450,14 @@ declare module PlayFabAdminModule { */ 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 }): 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 }): Promise>; @@ -456,7 +474,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -481,7 +500,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -512,7 +532,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -522,7 +543,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -537,6 +559,11 @@ declare module PlayFabAdminModule { * https://docs.microsoft.com/rest/api/playfab/admin/authentication/updateopenidconnection */ 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. @@ -554,7 +581,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -564,7 +592,8 @@ declare module PlayFabAdminModule { */ 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 }): Promise>; @@ -608,6 +637,11 @@ declare module PlayFabAdminModule { * https://docs.microsoft.com/rest/api/playfab/admin/account-management/updateusertitledisplayname */ 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>; } } @@ -621,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; @@ -657,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; @@ -687,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; @@ -710,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. */ @@ -789,6 +871,16 @@ declare module PlayFabAdminModels { 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; } @@ -809,6 +901,8 @@ declare module PlayFabAdminModels { 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; } @@ -1020,16 +1114,6 @@ declare module PlayFabAdminModels { | "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; @@ -1057,7 +1141,8 @@ declare module PlayFabAdminModels { | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" @@ -1308,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.). */ @@ -1376,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; } @@ -1593,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; @@ -1618,6 +1782,16 @@ 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 }; @@ -1640,6 +1814,38 @@ declare module PlayFabAdminModels { } + 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; @@ -1759,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; @@ -1809,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; @@ -1854,25 +2080,6 @@ 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" @@ -1978,7 +2185,6 @@ declare module PlayFabAdminModels { | "UnableToConnectToDatabase" | "InternalServerError" | "InvalidReportDate" - | "ReportNotAvailable" | "DatabaseThroughputExceeded" | "InvalidGameTicket" | "ExpiredGameTicket" @@ -2354,7 +2560,6 @@ declare module PlayFabAdminModels { | "InsightsManagementGetOperationStatusInvalidParameter" | "DuplicatePurchaseTransactionId" | "EvaluationModePlayerCountExceeded" - | "GetPlayersInSegmentRateLimitExceeded" | "CloudScriptFunctionNameSizeExceeded" | "PaidInsightsFeaturesNotEnabled" | "CloudScriptAzureFunctionsQueueRequestError" @@ -2417,6 +2622,66 @@ declare module PlayFabAdminModels { | "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" @@ -2460,6 +2725,8 @@ declare module PlayFabAdminModels { | "CatalogItemTypeInvalid" | "CatalogBadRequest" | "CatalogTooManyRequests" + | "InvalidCatalogItemConfiguration" + | "LegacyEconomyDisabled" | "ExportInvalidStatusUpdate" | "ExportInvalidPrefix" | "ExportBlobContainerDoesNotExist" @@ -2506,6 +2773,7 @@ declare module PlayFabAdminModels { | "MultiplayerServerBuildReferencedByMatchmakingQueue" | "MultiplayerServerBuildReferencedByBuildAlias" | "MultiplayerServerBuildAliasReferencedByMatchmakingQueue" + | "PartySerializationError" | "ExperimentationExperimentStopped" | "ExperimentationExperimentRunning" | "ExperimentationExperimentNotFound" @@ -2529,6 +2797,10 @@ declare module PlayFabAdminModels { | "ExperimentationExclusionGroupCannotDelete" | "ExperimentationExclusionGroupInvalidTrafficAllocation" | "ExperimentationExclusionGroupInvalidName" + | "ExperimentationLegacyExperimentInvalidOperation" + | "ExperimentationExperimentStopFailed" + | "ExperimentationExperimentDeleteFailed" + | "ExperimentationExperimentStartFailed" | "MaxActionDepthExceeded" | "TitleNotOnUpdatedPricingPlan" | "SegmentManagementTitleNotInFlight" @@ -2545,8 +2817,12 @@ declare module PlayFabAdminModels { | "AsyncExportNotInFlight" | "AsyncExportNotFound" | "AsyncExportRateLimitExceeded" + | "AnalyticsSegmentCountOverLimit" + | "GetSegmentPlayerCountNotInFlight" + | "GetSegmentPlayerCountRateLimitExceeded" | "SnapshotNotFound" | "InventoryApiNotImplemented" + | "InventoryCollectionDeletionDisallowed" | "LobbyDoesNotExist" | "LobbyRateLimitExceeded" | "LobbyPlayerAlreadyJoined" @@ -2559,10 +2835,23 @@ declare module PlayFabAdminModels { | "LobbyNewOwnerMustBeConnected" | "LobbyCurrentOwnerStillConnected" | "LobbyMemberIsNotOwner" + | "LobbyServerMismatch" + | "LobbyServerNotFound" + | "LobbyDifferentServerAlreadyJoined" + | "LobbyServerAlreadyJoined" + | "LobbyIsNotClientOwned" + | "LobbyDoesNotUseConnections" | "EventSamplingInvalidRatio" | "EventSamplingInvalidEventNamespace" | "EventSamplingInvalidEventName" | "EventSamplingRatioNotFound" + | "TelemetryKeyNotFound" + | "TelemetryKeyInvalidName" + | "TelemetryKeyAlreadyExists" + | "TelemetryKeyInvalid" + | "TelemetryKeyCountOverLimit" + | "TelemetryKeyDeactivated" + | "TelemetryKeyLongInsightsRetentionNotAllowed" | "EventSinkConnectionInvalid" | "EventSinkConnectionUnauthorized" | "EventSinkRegionInvalid" @@ -2575,9 +2864,170 @@ declare module PlayFabAdminModels { | "EventSinkTenantNotFound" | "EventSinkAadNotFound" | "EventSinkDatabaseNotFound" + | "EventSinkTitleUnauthorized" + | "EventSinkInsufficientRoleAssignment" + | "EventSinkContainerNotFound" + | "EventSinkTenantIdInvalid" + | "EventSinkResourceMisconfigured" + | "EventSinkAccessDenied" + | "EventSinkWriteConflict" + | "EventSinkResourceNotFound" + | "EventSinkResourceFeatureNotSupported" + | "EventSinkBucketNameInvalid" + | "EventSinkResourceUnavailable" | "OperationCanceled" | "InvalidDisplayNameRandomSuffixLength" - | "AllowNonUniquePlayerDisplayNamesDisableNotAllowed"; + | "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 */ @@ -2709,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; } @@ -2834,42 +3259,6 @@ 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 }; - /** - * If set to true, the profiles are loaded asynchronously and the response will include a continuation token and - * approximate profile count until the first batch of profiles is loaded. Use this parameter to help avoid network - * timeouts. - */ - GetProfilesAsync?: boolean; - /** - * Maximum is 10,000. The value 0 will prevent loading any profiles and return only the count of profiles matching this - * segment. - */ - 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 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 GetPlayersSegmentsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ CustomTags?: { [key: string]: string | null }; @@ -2921,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. */ @@ -2960,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; @@ -3170,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; @@ -3196,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; @@ -3220,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; @@ -3362,6 +3794,25 @@ declare module PlayFabAdminModels { } + 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 ListVirtualCurrencyTypesRequest extends PlayFabModule.IPlayFabRequestCommon { } @@ -3414,7 +3865,10 @@ declare module PlayFabAdminModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface LogStatement { /** Optional object accompanying the message as contextual information */ @@ -3460,61 +3914,6 @@ declare module PlayFabAdminModels { } - 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; @@ -3538,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; @@ -3547,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; } @@ -3565,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 @@ -3607,80 +4019,6 @@ 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 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; - /** The prediction of the player to churn within the next seven days. */ - ChurnPrediction?: 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[]; @@ -3770,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; @@ -3814,18 +4140,37 @@ declare module PlayFabAdminModels { } - type PushNotificationPlatform = "ApplePushNotificationService" + 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; - | "GoogleCloudMessaging"; + } - 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; @@ -3889,15 +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 }; @@ -4138,6 +4474,14 @@ declare module PlayFabAdminModels { 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. */ @@ -4622,7 +4966,8 @@ declare module PlayFabAdminModels { | "FacebookInstantGames" | "OpenIdConnect" | "Apple" - | "NintendoSwitchAccount"; + | "NintendoSwitchAccount" + | "GooglePlayGames"; export interface SegmentModel { /** Segment description. */ @@ -4653,8 +4998,12 @@ declare module PlayFabAdminModels { | "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. */ @@ -4673,6 +5022,8 @@ declare module PlayFabAdminModels { IncrementPlayerStatisticAction?: IncrementPlayerStatisticSegmentAction; /** Push notification segment trigger action. */ PushNotificationAction?: PushNotificationSegmentAction; + /** Subtract inventory item v2 segment trigger action. */ + SubtractInventoryItemsV2Action?: SubtractInventoryItemsV2SegmentAction; } @@ -4690,6 +5041,12 @@ 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 }; @@ -4707,7 +5064,7 @@ declare module PlayFabAdminModels { } 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; @@ -4928,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; @@ -5025,6 +5410,8 @@ declare module PlayFabAdminModels { 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; } @@ -5089,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; } @@ -5132,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. */ @@ -5146,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; } @@ -5286,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 */ @@ -5316,6 +5751,8 @@ declare module PlayFabAdminModels { PrivateInfo?: UserPrivateAccountInfo; /** 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 */ @@ -5341,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; @@ -5378,6 +5823,11 @@ declare module PlayFabAdminModels { } + type UserFamilyType = "None" + + | "Xbox" + | "Steam"; + export interface UserGameCenterInfo { /** Gamecenter identifier */ GameCenterId?: string; @@ -5468,7 +5918,10 @@ declare module PlayFabAdminModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserOriginationSegmentFilter { /** User login provider. */ @@ -5490,6 +5943,12 @@ declare module PlayFabAdminModels { } + 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; @@ -5546,6 +6005,39 @@ declare module PlayFabAdminModels { } + 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[]; + + } + export interface ValueToDateModel { /** ISO 4217 code of the currency used in the purchases */ Currency?: string; diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabAuthenticationApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabAuthenticationApi.d.ts index 37464940..58381549 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabAuthenticationApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabAuthenticationApi.d.ts @@ -116,7 +116,14 @@ declare module PlayFabAuthenticationModels { type IdentifiedDeviceType = "Unknown" | "XboxOne" - | "Scarlett"; + | "Scarlett" + | "WindowsOneCore" + | "WindowsOneCoreMobile" + | "Win32" + | "android" + | "iOS" + | "PlayStation" + | "Nintendo"; type LoginIdentityProvider = "Unknown" @@ -140,7 +147,10 @@ declare module PlayFabAuthenticationModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "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.). */ diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabClientApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabClientApi.d.ts index 9543ba48..3819a54d 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabClientApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabClientApi.d.ts @@ -45,7 +45,8 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -67,13 +68,16 @@ declare module PlayFabClientModule { */ 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 }): 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 }): Promise>; @@ -107,6 +111,11 @@ declare module PlayFabClientModule { * 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 }): Promise>; + /** + * 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. @@ -130,7 +139,8 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -140,7 +150,8 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -169,11 +180,6 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/content/getcontentdownloadurl */ GetContentDownloadUrl(request: PlayFabClientModels.GetContentDownloadUrlRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; - /** - * 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 }): Promise>; /** * Retrieves a list of ranked friends of the current player for the given statistic, starting from the indicated point in * the leaderboard @@ -192,11 +198,6 @@ declare module PlayFabClientModule { * 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 }): Promise>; - /** - * 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 }): 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 @@ -219,9 +220,10 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -236,6 +238,11 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayercombinedinfo */ 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 @@ -267,6 +274,11 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/trading/getplayertrades */ 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 @@ -320,17 +332,35 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/account-management/getplayfabidsfromnintendoswitchdeviceids */ GetPlayFabIDsFromNintendoSwitchDeviceIds(request: PlayFabClientModels.GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * 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 }): 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 }): 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: @@ -349,8 +379,9 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -363,7 +394,8 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -398,7 +430,8 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -433,6 +466,11 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkapple */ 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 @@ -513,6 +551,11 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/account-management/linkxboxaccount */ 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 @@ -524,6 +567,11 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithapple */ 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 @@ -628,34 +676,27 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/authentication/loginwithxbox */ LoginWithXbox(request: PlayFabClientModels.LoginWithXboxRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; - /** - * 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 }): 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 }): 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 }): 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 }): 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 */ @@ -672,7 +713,7 @@ declare module PlayFabClientModule { 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 }): Promise>; @@ -717,7 +758,8 @@ declare module PlayFabClientModule { */ 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 }): Promise>; @@ -745,13 +787,15 @@ declare module PlayFabClientModule { */ 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 }): 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 }): Promise>; @@ -765,6 +809,11 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/account-management/unlinkapple */ 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 @@ -843,15 +892,17 @@ declare module PlayFabClientModule { */ 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 }): 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 */ @@ -872,6 +923,11 @@ declare module PlayFabClientModule { * https://docs.microsoft.com/rest/api/playfab/client/characters/updatecharacterstatistics */ 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. @@ -903,25 +959,29 @@ declare module PlayFabClientModule { */ 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 }): 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 }): 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 }): 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 }): Promise>; @@ -1131,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,17 +1378,6 @@ declare module PlayFabClientModels { | "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 }; @@ -1433,12 +1490,6 @@ declare module PlayFabClientModels { } - export interface Container_Dictionary_String_String { - /** Content of data */ - Data?: { [key: string]: string | null }; - - } - type ContinentCode = "AF" | "AN" @@ -1446,7 +1497,8 @@ declare module PlayFabClientModels { | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" @@ -1697,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). */ @@ -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 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 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 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; } @@ -2022,20 +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 PlayStation :tm: Network information, if the user and PlayFab friend are both connected to PlayStation :tm: - * Network. + * 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[]; @@ -2043,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; } @@ -2056,63 +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; @@ -2284,10 +2299,6 @@ declare module PlayFabClientModels { * comma-separated list of platforms. */ ExternalPlatformFriends?: string; - /** 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; /** 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. */ @@ -2325,10 +2336,6 @@ declare module PlayFabClientModels { * comma-separated list of platforms. */ ExternalPlatformFriends?: string; - /** 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; /** Maximum number of entries to retrieve. Default 10, maximum 100. */ MaxResultsCount?: number; /** @@ -2356,17 +2363,16 @@ declare module PlayFabClientModels { * comma-separated list of platforms. */ ExternalPlatformFriends?: string; - /** 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; /** * 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; } @@ -2579,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 }; @@ -2677,10 +2700,25 @@ 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. The array cannot exceed 2,000 - * in length. + * Array of unique Facebook identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed 25 in + * length. */ FacebookIDs: string[]; @@ -2710,7 +2748,7 @@ 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. - * The array cannot exceed 2,000 in length. + * The array cannot exceed 25 in length. */ GameCenterIDs: string[]; @@ -2740,7 +2778,7 @@ 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. The array - * cannot exceed 2,000 in length. + * cannot exceed 25 in length. */ GoogleIDs: string[]; @@ -2755,7 +2793,7 @@ 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 2,000 in length. + * The array cannot exceed 25 in length. */ GooglePlayGamesPlayerIDs: string[]; @@ -2770,7 +2808,7 @@ declare module PlayFabClientModels { export interface GetPlayFabIDsFromKongregateIDsRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Array of unique Kongregate identifiers (Kongregate's user_id) for which the title needs to get PlayFab identifiers. The - * array cannot exceed 2,000 in length. + * array cannot exceed 25 in length. */ KongregateIDs: string[]; @@ -2785,7 +2823,7 @@ 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 2,000 in length. + * cannot exceed 25 in length. */ NintendoAccountIds: string[]; @@ -2800,7 +2838,7 @@ declare module PlayFabClientModels { export interface GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Array of unique Nintendo Switch Device identifiers for which the title needs to get PlayFab identifiers. The array - * cannot exceed 2,000 in length. + * cannot exceed 25 in length. */ NintendoSwitchDeviceIds: string[]; @@ -2812,12 +2850,27 @@ 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 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 2,000 in length. + * cannot exceed 25 in length. */ PSNAccountIDs: string[]; @@ -2829,10 +2882,27 @@ declare module PlayFabClientModels { } + 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. The array - * cannot exceed 2,000 in length. + * cannot exceed 25 in length. */ SteamStringIDs?: string[]; @@ -2844,10 +2914,25 @@ 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. The array cannot - * exceed 2,000 in length. + * exceed 25 in length. */ TwitchIds: string[]; @@ -2864,7 +2949,7 @@ declare module PlayFabClientModels { Sandbox?: string; /** * Array of unique Xbox Live account identifiers for which the title needs to get PlayFab identifiers. The array cannot - * exceed 2,000 in length. + * exceed 25 in length. */ XboxLiveAccountIDs: string[]; @@ -3206,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; @@ -3234,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. */ @@ -3432,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; } @@ -3467,6 +3569,21 @@ declare module PlayFabClientModels { } + export interface ListPlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + + } + + 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; + + } + export interface ListUsersCharactersRequest extends PlayFabModule.IPlayFabRequestCommon { /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ PlayFabId?: string; @@ -3515,7 +3632,10 @@ declare module PlayFabClientModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface LoginResult extends PlayFabModule.IPlayFabResultCommon { /** @@ -3527,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; @@ -3549,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 @@ -3570,7 +3690,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 Apple after login. Represented as the identityToken field in the authorization @@ -3580,7 +3700,28 @@ declare module PlayFabClientModels { 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 + * 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. */ PlayerSecret?: string; /** * Unique identifier for the title, found in the Settings > Game Properties section of the PlayFab developer site when a @@ -3597,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 @@ -3633,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 @@ -3651,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 @@ -3675,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; @@ -3707,17 +3850,19 @@ 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. @@ -3731,11 +3876,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; /** * OAuth 2.0 server authentication code obtained on the client by calling the requestServerSideAccess() @@ -3759,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 @@ -3782,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 @@ -3803,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 @@ -3824,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 @@ -3847,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 @@ -3856,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 @@ -3890,13 +4035,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; /** 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 PlayStation :tm: Network when requesting an auth code */ RedirectUri?: string; @@ -3913,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. @@ -3939,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 @@ -3958,11 +4108,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 @@ -3983,57 +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; @@ -4106,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 @@ -4313,6 +4428,17 @@ declare module PlayFabClientModels { } + 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; @@ -4394,27 +4520,6 @@ declare module PlayFabClientModels { } - 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; @@ -4436,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 @@ -4640,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; } @@ -4737,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; @@ -4933,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 @@ -5192,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 }; @@ -5204,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 }; @@ -5277,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 */ @@ -5307,6 +5458,8 @@ declare module PlayFabClientModels { PrivateInfo?: UserPrivateAccountInfo; /** 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 */ @@ -5332,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; @@ -5459,7 +5620,10 @@ declare module PlayFabClientModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserPrivateAccountInfo { /** user email address */ @@ -5475,6 +5639,12 @@ declare module PlayFabClientModels { } + export interface UserServerCustomIdInfo { + /** Custom ID */ + CustomId?: string; + + } + export interface UserSettings { /** Boolean for whether this player is eligible for gathering device info. */ GatherDeviceInfo: boolean; @@ -5592,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 be44ea24..38ac8fc3 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabCloudScriptApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabCloudScriptApi.d.ts @@ -21,6 +21,11 @@ declare module PlayFabCloudScriptModule { * 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 @@ -56,6 +61,11 @@ declare module PlayFabCloudScriptModule { * 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 }): 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 @@ -108,7 +118,8 @@ declare module PlayFabCloudScriptModels { | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" @@ -359,7 +370,8 @@ declare module PlayFabCloudScriptModels { | "EH" | "YE" | "ZM" - | "ZW"; + | "ZW" + | "Unknown"; type EmailVerificationStatus = "Unverified" @@ -378,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; @@ -467,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; @@ -535,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 }; @@ -595,7 +625,10 @@ declare module PlayFabCloudScriptModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface LogStatement { /** Optional object accompanying the message as contextual information */ @@ -762,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 }; @@ -843,7 +888,8 @@ 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.). */ diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabDataApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabDataApi.d.ts index ec9909ef..287d8c21 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabDataApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabDataApi.d.ts @@ -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; @@ -258,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 index 8b299507..733020c5 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabEconomyApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabEconomyApi.d.ts @@ -5,17 +5,20 @@ declare module PlayFabEconomyModule { ForgetAllCredentials(): void; /** - * Add inventory items. + * 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. + * 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. + * 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>; @@ -25,7 +28,8 @@ declare module PlayFabEconomyModule { */ DeleteEntityItemReviews(request: PlayFabEconomyModels.DeleteEntityItemReviewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Delete an Inventory Collection + * 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>; @@ -40,37 +44,60 @@ declare module PlayFabEconomyModule { */ DeleteItem(request: PlayFabEconomyModels.DeleteItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Execute a list of Inventory Operations + * 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>; /** - * Gets the configuration for the catalog. + * 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. + * 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. + * 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. + * 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. + * 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 + * 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>; @@ -80,17 +107,29 @@ declare module PlayFabEconomyModule { */ GetInventoryItems(request: PlayFabEconomyModels.GetInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Retrieves an item from the public catalog. + * 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 + * 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. + * 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>; @@ -100,37 +139,41 @@ declare module PlayFabEconomyModule { */ 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. + * 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 reviews associated with the specified item. + * 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. + * 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>; /** - * Gets the access tokens. - * https://docs.microsoft.com/rest/api/playfab/economy/inventory/getmicrosoftstoreaccesstokens - */ - GetMicrosoftStoreAccessTokens(request: PlayFabEconomyModels.GetMicrosoftStoreAccessTokensRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; - /** - * Get transaction history. + * 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. + * 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 + * 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>; @@ -139,13 +182,18 @@ declare module PlayFabEconomyModule { * 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. + * 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>; @@ -175,18 +223,23 @@ declare module PlayFabEconomyModule { */ ReportItemReview(request: PlayFabEconomyModels.ReportItemReviewRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Creates or updates a review for the specified item. + * 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. + * 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. + * 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>; @@ -206,17 +259,24 @@ declare module PlayFabEconomyModule { */ TakedownItemReviews(request: PlayFabEconomyModels.TakedownItemReviewsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Transfer inventory items. + * 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. + * 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. + * 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>; @@ -233,6 +293,8 @@ 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. */ @@ -243,15 +305,26 @@ declare module PlayFabEconomyModels { 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 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. */ + /** + * 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. */ + /** + * 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; @@ -261,7 +334,10 @@ declare module PlayFabEconomyModels { } export interface AddInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { - /** ETags are used for concurrency checking when updating resources. */ + /** + * 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; @@ -287,13 +363,17 @@ declare module PlayFabEconomyModels { } export interface CatalogConfig { - /** A list of player entity keys that will have admin permissions. */ + /** 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. */ + /** A list of deep link formats. Up to 10 can be added. */ DeepLinkFormats?: DeepLinkFormat[]; - /** A list of display properties to index. */ + /** + * 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; @@ -301,9 +381,14 @@ declare module PlayFabEconomyModels { Image?: ImageConfig; /** Flag defining whether catalog is enabled. */ IsCatalogEnabled: boolean; - /** A list of Platforms that can be applied to catalog items. */ + /** + * 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[]; - /** A set of player entity keys that are allowed to review content. */ + /** 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; @@ -311,9 +396,12 @@ declare module PlayFabEconomyModels { } export interface CatalogItem { - /** The alternate IDs associated with this item. */ + /** + * 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 contents associated with this item. */ + /** 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; @@ -324,13 +412,22 @@ declare module PlayFabEconomyModels { /** The set of platform specific deep links for this item. */ DeepLinks?: DeepLink[]; /** - * A dictionary of localized descriptions. Key is language code and localized string is the value. The neutral locale is - * required. + * 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. */ + /** + * 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. */ + /** 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; @@ -338,13 +435,22 @@ declare module PlayFabEconomyModels { ETag?: string; /** The unique ID of the item. */ Id?: string; - /** The images associated with this item. Images can be thumbnails or screenshots. */ + /** + * 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. */ + /** + * 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. */ + /** + * 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; @@ -352,22 +458,27 @@ declare module PlayFabEconomyModels { Moderation?: ModerationState; /** The platforms supported by this item. */ Platforms?: string[]; - /** The base price of this item. */ + /** 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. */ + /** 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. + * 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. */ + /** + * The high-level type of the item. The following item types are supported: bundle, catalogItem, currency, store, ugc, + * subscription. + */ Type?: string; } @@ -383,8 +494,12 @@ declare module PlayFabEconomyModels { } export interface CatalogPrice { - /** The amounts of the catalog item price. */ + /** 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; } @@ -410,7 +525,7 @@ declare module PlayFabEconomyModels { } export interface CatalogPriceOptions { - /** Prices of the catalog item. */ + /** Prices of the catalog item. An item can have up to 15 prices */ Prices?: CatalogPrice[]; } @@ -428,13 +543,25 @@ declare module PlayFabEconomyModels { } export interface CatalogSpecificConfig { - /** The set of content types that will be used for validation. */ + /** + * 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. */ + /** + * 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" @@ -450,23 +577,28 @@ declare module PlayFabEconomyModels { export interface Content { /** The content unique ID. */ Id?: string; - /** The maximum client version that this content is compatible with. */ + /** + * 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. */ + /** + * 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. */ + /** + * 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. */ + /** 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; } - export interface ContentFeed { - - } - type CountryCode = "AF" | "AX" @@ -716,14 +848,15 @@ declare module PlayFabEconomyModels { | "EH" | "YE" | "ZM" - | "ZW"; + | "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. */ + /** Whether the item should be published immediately. This value is optional, defaults to false. */ Publish: boolean; } @@ -783,7 +916,10 @@ declare module PlayFabEconomyModels { 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. */ + /** + * 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; } @@ -799,15 +935,24 @@ declare module PlayFabEconomyModels { } export interface DeleteInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The id of the entity's collection to perform this action on. (Default="default") */ + /** + * 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. */ + /** + * 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. */ + /** + * 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; @@ -864,26 +1009,38 @@ declare module PlayFabEconomyModels { } export interface ExecuteInventoryOperationsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The id of the entity's collection to perform this action on. (Default="default") */ + /** + * 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. */ + /** + * 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. */ + /** + * 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. + * 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. */ + /** + * 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; @@ -892,16 +1049,82 @@ declare module PlayFabEconomyModels { } + 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. */ + /** + * 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. */ + /** + * 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'. */ + /** + * 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; @@ -941,6 +1164,13 @@ declare module PlayFabEconomyModels { 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. */ @@ -964,13 +1194,16 @@ declare module PlayFabEconomyModels { * initial request. */ ContinuationToken?: string; - /** Number of items to retrieve. Maximum page size is 10. */ + /** 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 specify ItemType. */ + /** + * OData Filter to refine the items returned. CatalogItem properties 'type' can be used in the filter. For example: "type + * eq 'ugc'" + */ Filter?: string; } @@ -1004,7 +1237,7 @@ declare module PlayFabEconomyModels { 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. (Default = 10) */ + /** 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 }; @@ -1029,13 +1262,16 @@ declare module PlayFabEconomyModels { * initial request. */ ContinuationToken?: string; - /** Number of items to retrieve. Maximum page size is 50. (Default=10) */ + /** 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; - /** The filters to limit what is returned to the client. */ + /** + * 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; } @@ -1043,13 +1279,34 @@ declare module PlayFabEconomyModels { 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. */ + /** + * 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; @@ -1058,7 +1315,7 @@ declare module PlayFabEconomyModels { * initial request. */ ContinuationToken?: string; - /** Number of items to retrieve. Maximum page size is 25. */ + /** 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 }; @@ -1136,13 +1393,16 @@ declare module PlayFabEconomyModels { AlternateId?: CatalogAlternateId; /** An opaque token used to retrieve the next page of items, if any are available. */ ContinuationToken?: string; - /** Number of items to retrieve. Maximum page size is 200. If not specified, defaults to 10. */ + /** 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. */ + /** + * An OData orderBy used to order the results of the query. Possible values are Helpfulness, Rating, and Submitted (For + * example: "Submitted desc") + */ OrderBy?: string; } @@ -1195,36 +1455,33 @@ declare module PlayFabEconomyModels { } - export interface GetMicrosoftStoreAccessTokensRequest 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 GetMicrosoftStoreAccessTokensResponse extends PlayFabModule.IPlayFabResultCommon { - /** - * The collections access token for calling https://onestore.microsoft.com/b2b/keys/create/collections to obtain a - * CollectionsIdKey for the user - */ - CollectionsAccessToken?: string; - /** The date the collections access token expires */ - CollectionsAccessTokenExpirationDate: string; - - } - 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. (Default = 10) */ + /** + * 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 query. */ + /** + * 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; } @@ -1252,9 +1509,12 @@ declare module PlayFabEconomyModels { export interface Image { /** The image unique ID. */ Id?: string; - /** The client-defined tag associated with this image. */ + /** + * The client-defined tag associated with this image. Tags must be defined in the Catalog Config before being used in + * images + */ Tag?: string; - /** The client-defined type of this image. */ + /** 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; @@ -1262,13 +1522,16 @@ declare module PlayFabEconomyModels { } export interface ImageConfig { - /** The set of tags that will be used for validation. */ + /** + * 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. */ + /** Game specific properties for display purposes. The Display Properties field has a 1000 byte limit. */ DisplayProperties?: any; } @@ -1276,12 +1539,19 @@ declare module PlayFabEconomyModels { export interface InventoryItem { /** The amount of the item. */ Amount?: number; - /** Game specific properties for display purposes. This is an arbitrary JSON blob. */ + /** + * 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; @@ -1335,7 +1605,12 @@ declare module PlayFabEconomyModels { | "Approved" | "Rejected"; - export interface PayoutDetails { + 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[]; } @@ -1376,6 +1651,8 @@ declare module PlayFabEconomyModels { * 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. */ @@ -1393,7 +1670,10 @@ declare module PlayFabEconomyModels { 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 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 }; @@ -1402,11 +1682,19 @@ declare module PlayFabEconomyModels { * (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. */ + /** + * 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. */ + /** + * 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; @@ -1423,7 +1711,10 @@ declare module PlayFabEconomyModels { } export interface PurchaseInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { - /** ETags are used for concurrency checking when updating resources. */ + /** + * 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; @@ -1436,6 +1727,10 @@ declare module PlayFabEconomyModels { } + export interface PurchaseOverridesInfo { + + } + export interface PurchasePriceAmount { /** The amount of the inventory item to use in the purchase . */ Amount: number; @@ -1464,6 +1759,22 @@ declare module PlayFabEconomyModels { } + 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; @@ -1486,6 +1797,28 @@ declare module PlayFabEconomyModels { } + 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; @@ -1511,13 +1844,14 @@ declare module PlayFabEconomyModels { export interface RedeemMicrosoftStoreInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { /** The id of the entity's collection to perform this action on. (Default="default") */ CollectionId?: string; - /** The OneStore Collections Id Key used for AAD authentication. */ - CollectionsIdKey?: 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. */ + /** + * Xbox Token used for delegated business partner authentication. Token provided by the Xbox Live SDK method + * GetTokenAndSignatureAsync("POST", "https://playfabapi.com/", ""). + */ XboxToken?: string; } @@ -1555,7 +1889,7 @@ declare module PlayFabEconomyModels { } export interface RedeemPlayStationStoreInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** Authorization code provided by the PlayStation OAuth provider. */ + /** 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; @@ -1563,6 +1897,8 @@ declare module PlayFabEconomyModels { 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; @@ -1603,18 +1939,20 @@ declare module PlayFabEconomyModels { 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; - /** The ID of the offer being redeemed. */ - OfferId?: 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 ID of the offer being redeemed. */ - OfferId?: string; /** The timestamp for when the redeem was completed. */ SuccessTimestamp: string; @@ -1663,6 +2001,8 @@ declare module PlayFabEconomyModels { } 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. */ @@ -1679,8 +2019,6 @@ declare module PlayFabEconomyModels { Rating: number; /** The ID of the author of the review. */ ReviewerEntity?: EntityKey; - /** Deprecated. Use ReviewerEntity instead. This property will be removed in a future release. */ - ReviewerId?: string; /** The ID of the review. */ ReviewId?: string; /** The full text of this review. */ @@ -1692,6 +2030,12 @@ declare module PlayFabEconomyModels { } + 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; @@ -1720,24 +2064,23 @@ declare module PlayFabEconomyModels { } - export interface ScanResult { - /** The URL of the item which failed the scan. */ - Url?: 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. Maximum page size is 50. Default value is 10. */ + /** 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. */ + /** + * 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; - /** An OData orderBy used to order the results of the search query. */ + /** 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; @@ -1780,6 +2123,8 @@ declare module PlayFabEconomyModels { 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; @@ -1813,12 +2158,6 @@ declare module PlayFabEconomyModels { } - export interface SubscriptionDetails { - /** The length of time that the subscription will last in seconds. */ - DurationInSeconds: number; - - } - export interface SubtractInventoryItemsOperation { /** The amount to subtract from the current item amount. */ Amount?: number; @@ -1827,6 +2166,8 @@ declare module PlayFabEconomyModels { * false). */ DeleteEmptyStacks: boolean; + /** The duration to subtract from the current item expiration date. */ + DurationInSeconds?: number; /** The inventory item the operation applies to. */ Item?: InventoryItemReference; @@ -1835,7 +2176,10 @@ declare module PlayFabEconomyModels { 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 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 }; @@ -1844,11 +2188,19 @@ declare module PlayFabEconomyModels { * (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. */ + /** + * 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. */ + /** + * 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; @@ -1856,7 +2208,10 @@ declare module PlayFabEconomyModels { } export interface SubtractInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { - /** ETags are used for concurrency checking when updating resources. */ + /** + * 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; @@ -1880,6 +2235,10 @@ declare module PlayFabEconomyModels { 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. */ @@ -1899,9 +2258,19 @@ declare module PlayFabEconomyModels { } + 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. */ @@ -1914,6 +2283,12 @@ declare module PlayFabEconomyModels { } 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; @@ -1974,7 +2349,10 @@ declare module PlayFabEconomyModels { 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). */ + /** + * 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; @@ -1992,12 +2370,25 @@ declare module PlayFabEconomyModels { } export interface TransferInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { - /** ETags are used for concurrency checking when updating resources (after transferring from). */ + /** + * 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[]; @@ -2020,7 +2411,7 @@ declare module PlayFabEconomyModels { CustomTags?: { [key: string]: string | null }; /** Updated metadata describing the catalog item to be updated. */ Item?: CatalogItem; - /** Whether the item should be published immediately. */ + /** Whether the item should be published immediately. This value is optional, defaults to false. */ Publish: boolean; } @@ -2038,15 +2429,24 @@ declare module PlayFabEconomyModels { } export interface UpdateInventoryItemsRequest extends PlayFabModule.IPlayFabRequestCommon { - /** The id of the entity's collection to perform this action on. (Default="default") */ + /** + * 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. */ + /** + * 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. */ + /** + * 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; @@ -2054,7 +2454,10 @@ declare module PlayFabEconomyModels { } export interface UpdateInventoryItemsResponse extends PlayFabModule.IPlayFabResultCommon { - /** ETags are used for concurrency checking when updating resources. */ + /** + * 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; diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabEventsApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabEventsApi.d.ts index 105a132a..6bcc412f 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabEventsApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabEventsApi.d.ts @@ -4,6 +4,56 @@ 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 @@ -20,6 +70,127 @@ declare module PlayFabEventsModule { } 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/PlayFabGroupsApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabGroupsApi.d.ts index 16f98aba..2ef182c1 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabGroupsApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabGroupsApi.d.ts @@ -600,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 */ @@ -628,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/PlayFabMatchmakerApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabMatchmakerApi.d.ts deleted file mode 100644 index 63daa491..00000000 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabMatchmakerApi.d.ts +++ /dev/null @@ -1,169 +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 }): Promise>; - /** - * 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 }): Promise>; - /** - * 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 }): Promise>; - /** - * 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 }): Promise>; - - } -} - -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 { - - } - - 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 658c1631..d2ff0a24 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabMultiplayerApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabMultiplayerApi.d.ts @@ -117,6 +117,11 @@ declare module PlayFabMultiplayerModule { * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/deleteremoteuser */ 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 @@ -239,6 +244,11 @@ declare module PlayFabMultiplayerModule { * 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 @@ -249,6 +259,11 @@ declare module PlayFabMultiplayerModule { * 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 @@ -312,6 +327,11 @@ declare module PlayFabMultiplayerModule { * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/listqosserversfortitle */ 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 @@ -343,6 +363,11 @@ declare module PlayFabMultiplayerModule { * https://docs.microsoft.com/rest/api/playfab/multiplayer/multiplayerserver/requestmultiplayerserver */ 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 @@ -408,11 +433,23 @@ declare module PlayFabMultiplayerModule { * 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 }): 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>; } } @@ -483,7 +520,11 @@ declare module PlayFabMultiplayerModels { | "WestUs2" | "CentralIndia" | "UaeNorth" - | "UkSouth"; + | "UkSouth" + | "SwedenCentral" + | "CanadaCentral" + | "MexicoCentral" + | "WestUs3"; type AzureVmFamily = "A" @@ -494,6 +535,8 @@ declare module PlayFabMultiplayerModels { | "Fsv2" | "Dasv4" | "Dav4" + | "Dadsv5" + | "Dadsv6" | "Eav4" | "Easv4" | "Ev4" @@ -503,7 +546,17 @@ declare module PlayFabMultiplayerModels { | "NCasT4_v3" | "Ddv4" | "Ddsv4" - | "HBv3"; + | "HBv3" + | "Ddv5" + | "Ddsv5" + | "Ddsv6" + | "Fasv6" + | "Fasv7" + | "Fadsv7" + | "Eadsv5" + | "Eadsv6" + | "Eadsv7" + | "Dadsv7"; type AzureVmSize = "Standard_A1" @@ -532,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" @@ -540,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" @@ -548,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" @@ -570,7 +659,21 @@ declare module PlayFabMultiplayerModels { | "Standard_HB120_32rs_v3" | "Standard_HB120_64rs_v3" | "Standard_HB120_96rs_v3" - | "Standard_HB120rs_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. */ @@ -656,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; @@ -670,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; @@ -807,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; /** @@ -824,11 +929,6 @@ declare module PlayFabMultiplayerModels { RegionConfigurations: BuildRegionParams[]; /** The resource constraints to apply to each server on the VM (EXPERIMENTAL API) */ ServerResourceConstraints?: ServerResourceConstraintParams; - /** - * 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 */ @@ -858,6 +958,8 @@ 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. */ @@ -904,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. @@ -928,11 +1032,6 @@ declare module PlayFabMultiplayerModels { 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 */ @@ -960,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. @@ -1011,18 +1112,22 @@ 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 @@ -1043,11 +1148,6 @@ 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 */ @@ -1073,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. @@ -1085,6 +1187,8 @@ 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 */ @@ -1128,7 +1232,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 private key-value pairs which are only visible to members of the lobby. At most 30 key-value pairs may be stored + * 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. */ @@ -1151,6 +1255,12 @@ declare module PlayFabMultiplayerModels { * 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 @@ -1404,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; @@ -1440,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%, @@ -1496,10 +1625,6 @@ declare module PlayFabMultiplayerModels { 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 }; - /** Controls whether this query should link to friends made on the Facebook network. Defaults to false */ - ExcludeFacebookFriends?: boolean; - /** Controls whether this query should link to friends made on the Steam network. Defaults to false */ - ExcludeSteamFriends?: boolean; /** Indicates which other platforms' friends this query should link to. */ ExternalPlatformFriends?: string; /** @@ -1508,20 +1633,25 @@ declare module PlayFabMultiplayerModels { * (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/membershipLock (must equal 'Unlocked' or 'Locked'), lobby/amOwner (required to equal "true"), lobby/amMember - * (required to equal "true"). + * 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" 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 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. */ + /** + * 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; } @@ -1543,15 +1673,16 @@ declare module PlayFabMultiplayerModels { * (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/membershipLock (must equal 'Unlocked' or 'Locked'), lobby/amOwner (required to equal "true"), lobby/amMember - * (required to equal "true"). + * 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" 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 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. */ @@ -1620,6 +1751,18 @@ 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 }; @@ -1721,6 +1864,8 @@ declare module PlayFabMultiplayerModels { StartMultiplayerServerCommand?: string; /** The VM size the build was created on. */ VmSize?: string; + /** The configuration for the VmStartupScript feature for the build */ + VmStartupScriptConfiguration?: VmStartupScriptConfiguration; } @@ -1784,7 +1929,10 @@ 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; @@ -1864,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. */ @@ -2061,7 +2211,7 @@ declare module PlayFabMultiplayerModels { MaxPlayers: number; /** * The private key-value pairs used by the member to communicate information to other members and the owner. Visible to all - * members of the lobby. At most 30 key-value pairs may be stored here, keys are limited to 30 characters and values to + * 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 }; @@ -2076,6 +2226,12 @@ declare module PlayFabMultiplayerModels { * 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, @@ -2087,6 +2243,35 @@ declare module PlayFabMultiplayerModels { } + 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; @@ -2094,7 +2279,7 @@ declare module PlayFabMultiplayerModels { 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 - * members of the lobby. At most 30 key-value pairs may be stored here, keys are limited to 30 characters and values to + * 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 }; @@ -2125,6 +2310,19 @@ 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 }; @@ -2294,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[]; @@ -2318,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; @@ -2379,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; } @@ -2392,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; @@ -2473,8 +2701,15 @@ declare module PlayFabMultiplayerModels { * 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; @@ -2484,6 +2719,16 @@ declare module PlayFabMultiplayerModels { } + 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 @@ -2707,6 +2952,45 @@ declare module PlayFabMultiplayerModels { } + 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; @@ -2721,6 +3005,16 @@ declare module PlayFabMultiplayerModels { | "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; @@ -2821,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. */ @@ -2837,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. */ @@ -2856,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 }; @@ -2872,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; @@ -2899,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; @@ -2908,6 +3260,8 @@ declare module PlayFabMultiplayerModels { Ports?: Port[]; /** The server's region. */ Region?: string; + /** The string server ID of the multiplayer server generated by PlayFab. */ + ServerId?: string; } @@ -2964,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; } @@ -3045,11 +3399,18 @@ declare module PlayFabMultiplayerModels { EntityKey: EntityKey; /** Opaque string, given to a client upon creating a connection with PubSub. */ PubSubConnectionHandle: string; - /** The name of the resource to subscribe to. */ + /** + * 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. */ + /** + * 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; } @@ -3255,6 +3616,33 @@ 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 @@ -3267,7 +3655,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 private key-value pairs which are only visible to members of the lobby. Optional. Sets or updates key-value pairs on + * 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. @@ -3286,9 +3674,9 @@ declare module PlayFabMultiplayerModels { /** * 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 members of 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. + * 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 }; /** @@ -3316,6 +3704,12 @@ declare module PlayFabMultiplayerModels { * 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 @@ -3337,11 +3731,23 @@ declare module PlayFabMultiplayerModels { 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; @@ -3353,17 +3759,37 @@ 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; diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabProfilesApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabProfilesApi.d.ts index ca19b112..ce708bfc 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabProfilesApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabProfilesApi.d.ts @@ -24,6 +24,16 @@ declare module PlayFabProfilesModule { * https://docs.microsoft.com/rest/api/playfab/profiles/account-management/gettitleplayersfrommasterplayeraccountids */ 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 @@ -119,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. */ @@ -132,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. @@ -152,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; @@ -186,6 +184,8 @@ declare module PlayFabProfilesModels { DataAsObject?: boolean; /** 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; } @@ -205,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; } @@ -246,19 +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[]; } @@ -303,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 601cf50c..47884a40 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabServerApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabServerApi.d.ts @@ -5,7 +5,8 @@ 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 }): Promise>; @@ -22,6 +23,11 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/account-management/addgenericid */ 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 @@ -36,7 +42,8 @@ declare module PlayFabServerModule { */ 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 }): Promise>; @@ -51,12 +58,14 @@ declare module PlayFabServerModule { */ 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 }): 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 }): Promise>; @@ -78,6 +87,11 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/account-management/deleteplayer */ 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 @@ -91,13 +105,10 @@ declare module PlayFabServerModule { */ 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 }): Promise>; - /** - * 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 }): Promise>; @@ -107,9 +118,17 @@ declare module PlayFabServerModule { * 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 }): 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 }): Promise>; @@ -120,7 +139,8 @@ declare module PlayFabServerModule { */ 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 }): Promise>; @@ -135,7 +155,8 @@ declare module PlayFabServerModule { */ 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 }): Promise>; @@ -202,6 +223,11 @@ declare module PlayFabServerModule { * 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 }): 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 @@ -212,15 +238,6 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/playstream/getplayersegments */ GetPlayerSegments(request: PlayFabServerModels.GetPlayersSegmentsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; - /** - * 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 }): 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 @@ -236,6 +253,11 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/playstream/getplayertags */ 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 @@ -263,17 +285,40 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/account-management/getplayfabidsfromnintendoswitchdeviceids */ GetPlayFabIDsFromNintendoSwitchDeviceIds(request: PlayFabServerModels.GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * 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 }): 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 }): 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: @@ -292,11 +337,25 @@ declare module PlayFabServerModule { */ 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 }): 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 @@ -310,7 +369,9 @@ declare module PlayFabServerModule { */ 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 }): Promise>; @@ -355,7 +416,8 @@ declare module PlayFabServerModule { */ 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 }): Promise>; @@ -386,25 +448,38 @@ declare module PlayFabServerModule { */ 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 }): 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 }): 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 }): 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 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 @@ -415,16 +490,70 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/account-management/linkpsnaccount */ 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 }): 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 }): 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. @@ -437,6 +566,11 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/authentication/loginwithsteamid */ 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 @@ -450,51 +584,36 @@ declare module PlayFabServerModule { */ 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 }): 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 }): 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 }): 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 }): Promise>; /** - * 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 }): 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 }): Promise>; - /** - * 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 }): Promise>; - /** - * 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 }): Promise>; - /** - * 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 }): Promise>; /** * Removes the specified friend from the the user's friend list * https://docs.microsoft.com/rest/api/playfab/server/friend-list-management/removefriend @@ -535,12 +654,14 @@ declare module PlayFabServerModule { */ 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 }): 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 }): Promise>; @@ -577,21 +698,6 @@ declare module PlayFabServerModule { * 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 }): Promise>; - /** - * 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 }): Promise>; - /** - * 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 }): Promise>; - /** - * 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 }): 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. @@ -614,17 +720,44 @@ declare module PlayFabServerModule { */ 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 }): 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 }): 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 @@ -645,22 +778,34 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/account-management/unlinkservercustomid */ 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 }): 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 }): 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 */ @@ -695,6 +840,11 @@ declare module PlayFabServerModule { * https://docs.microsoft.com/rest/api/playfab/server/characters/updatecharacterstatistics */ 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 @@ -720,7 +870,8 @@ declare module PlayFabServerModule { */ 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 }): Promise>; @@ -764,16 +915,6 @@ declare module PlayFabServerModule { } 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; @@ -823,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 }; @@ -928,6 +1083,8 @@ declare module PlayFabServerModels { 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; } @@ -940,6 +1097,8 @@ declare module PlayFabServerModels { 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; } @@ -957,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 @@ -1099,12 +1266,6 @@ declare module PlayFabServerModels { } - type ChurnRiskLevel = "NoData" - - | "LowRisk" - | "MediumRisk" - | "HighRisk"; - type CloudScriptRevisionOption = "Live" | "Latest" @@ -1132,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; @@ -1159,7 +1310,8 @@ declare module PlayFabServerModels { | "EU" | "NA" | "OC" - | "SA"; + | "SA" + | "Unknown"; type CountryCode = "AF" @@ -1410,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). */ @@ -1588,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; @@ -1607,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; @@ -1633,18 +1830,6 @@ 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" @@ -1756,6 +1941,20 @@ 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" @@ -1781,20 +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 PlayStation :tm: Network information, if the user and PlayFab friend are both connected to PlayStation :tm: - * Network. + * 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[]; @@ -1802,15 +2004,11 @@ 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" @@ -1916,7 +2114,6 @@ declare module PlayFabServerModels { | "UnableToConnectToDatabase" | "InternalServerError" | "InvalidReportDate" - | "ReportNotAvailable" | "DatabaseThroughputExceeded" | "InvalidGameTicket" | "ExpiredGameTicket" @@ -2292,7 +2489,6 @@ declare module PlayFabServerModels { | "InsightsManagementGetOperationStatusInvalidParameter" | "DuplicatePurchaseTransactionId" | "EvaluationModePlayerCountExceeded" - | "GetPlayersInSegmentRateLimitExceeded" | "CloudScriptFunctionNameSizeExceeded" | "PaidInsightsFeaturesNotEnabled" | "CloudScriptAzureFunctionsQueueRequestError" @@ -2355,6 +2551,66 @@ declare module PlayFabServerModels { | "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" @@ -2398,6 +2654,8 @@ declare module PlayFabServerModels { | "CatalogItemTypeInvalid" | "CatalogBadRequest" | "CatalogTooManyRequests" + | "InvalidCatalogItemConfiguration" + | "LegacyEconomyDisabled" | "ExportInvalidStatusUpdate" | "ExportInvalidPrefix" | "ExportBlobContainerDoesNotExist" @@ -2444,6 +2702,7 @@ declare module PlayFabServerModels { | "MultiplayerServerBuildReferencedByMatchmakingQueue" | "MultiplayerServerBuildReferencedByBuildAlias" | "MultiplayerServerBuildAliasReferencedByMatchmakingQueue" + | "PartySerializationError" | "ExperimentationExperimentStopped" | "ExperimentationExperimentRunning" | "ExperimentationExperimentNotFound" @@ -2467,6 +2726,10 @@ declare module PlayFabServerModels { | "ExperimentationExclusionGroupCannotDelete" | "ExperimentationExclusionGroupInvalidTrafficAllocation" | "ExperimentationExclusionGroupInvalidName" + | "ExperimentationLegacyExperimentInvalidOperation" + | "ExperimentationExperimentStopFailed" + | "ExperimentationExperimentDeleteFailed" + | "ExperimentationExperimentStartFailed" | "MaxActionDepthExceeded" | "TitleNotOnUpdatedPricingPlan" | "SegmentManagementTitleNotInFlight" @@ -2483,8 +2746,12 @@ declare module PlayFabServerModels { | "AsyncExportNotInFlight" | "AsyncExportNotFound" | "AsyncExportRateLimitExceeded" + | "AnalyticsSegmentCountOverLimit" + | "GetSegmentPlayerCountNotInFlight" + | "GetSegmentPlayerCountRateLimitExceeded" | "SnapshotNotFound" | "InventoryApiNotImplemented" + | "InventoryCollectionDeletionDisallowed" | "LobbyDoesNotExist" | "LobbyRateLimitExceeded" | "LobbyPlayerAlreadyJoined" @@ -2497,10 +2764,23 @@ declare module PlayFabServerModels { | "LobbyNewOwnerMustBeConnected" | "LobbyCurrentOwnerStillConnected" | "LobbyMemberIsNotOwner" + | "LobbyServerMismatch" + | "LobbyServerNotFound" + | "LobbyDifferentServerAlreadyJoined" + | "LobbyServerAlreadyJoined" + | "LobbyIsNotClientOwned" + | "LobbyDoesNotUseConnections" | "EventSamplingInvalidRatio" | "EventSamplingInvalidEventNamespace" | "EventSamplingInvalidEventName" | "EventSamplingRatioNotFound" + | "TelemetryKeyNotFound" + | "TelemetryKeyInvalidName" + | "TelemetryKeyAlreadyExists" + | "TelemetryKeyInvalid" + | "TelemetryKeyCountOverLimit" + | "TelemetryKeyDeactivated" + | "TelemetryKeyLongInsightsRetentionNotAllowed" | "EventSinkConnectionInvalid" | "EventSinkConnectionUnauthorized" | "EventSinkRegionInvalid" @@ -2513,9 +2793,170 @@ declare module PlayFabServerModels { | "EventSinkTenantNotFound" | "EventSinkAadNotFound" | "EventSinkDatabaseNotFound" + | "EventSinkTitleUnauthorized" + | "EventSinkInsufficientRoleAssignment" + | "EventSinkContainerNotFound" + | "EventSinkTenantIdInvalid" + | "EventSinkResourceMisconfigured" + | "EventSinkAccessDenied" + | "EventSinkWriteConflict" + | "EventSinkResourceNotFound" + | "EventSinkResourceFeatureNotSupported" + | "EventSinkBucketNameInvalid" + | "EventSinkResourceUnavailable" | "OperationCanceled" | "InvalidDisplayNameRandomSuffixLength" - | "AllowNonUniquePlayerDisplayNamesDisableNotAllowed"; + | "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. */ @@ -2672,10 +3113,6 @@ declare module PlayFabServerModels { * comma-separated list of platforms. */ ExternalPlatformFriends?: string; - /** 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; /** Maximum number of entries to retrieve. */ MaxResultsCount: number; /** The player whose friend leaderboard to get */ @@ -2705,10 +3142,6 @@ declare module PlayFabServerModels { * comma-separated list of platforms. */ ExternalPlatformFriends?: string; - /** 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; /** PlayFab identifier of the player whose friend list to get. */ PlayFabId: string; /** @@ -2717,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; } @@ -2908,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 }; @@ -2937,39 +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 }; - /** - * If set to true, the profiles are loaded asynchronously and the response will include a continuation token and - * approximate profile count until the first batch of profiles is loaded. Use this parameter to help avoid network - * timeouts. - */ - GetProfilesAsync?: boolean; - /** - * Maximum is 10,000. The value 0 will prevent loading any profiles and return only the count of profiles matching this - * segment. - */ - 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; } @@ -3036,10 +3471,25 @@ 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. The array cannot exceed 2,000 - * in length. + * Array of unique Facebook identifiers for which the title needs to get PlayFab identifiers. The array cannot exceed 25 in + * length. */ FacebookIDs: string[]; @@ -3084,7 +3534,7 @@ 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 2,000 in length. + * cannot exceed 25 in length. */ NintendoAccountIds: string[]; @@ -3099,7 +3549,7 @@ declare module PlayFabServerModels { export interface GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest extends PlayFabModule.IPlayFabRequestCommon { /** * Array of unique Nintendo Switch Device identifiers for which the title needs to get PlayFab identifiers. The array - * cannot exceed 2,000 in length. + * cannot exceed 25 in length. */ NintendoSwitchDeviceIds: string[]; @@ -3111,12 +3561,27 @@ 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 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 2,000 in length. + * cannot exceed 25 in length. */ PSNAccountIDs: string[]; @@ -3128,10 +3593,42 @@ declare module PlayFabServerModels { } + 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 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 2,000 in length. + * cannot exceed 25 in length. */ SteamStringIDs?: string[]; @@ -3143,10 +3640,25 @@ declare module PlayFabServerModels { } + 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 2,000 in length. + * exceed 25 in length. */ TwitchIds: string[]; @@ -3163,7 +3675,7 @@ declare module PlayFabServerModels { Sandbox?: string; /** * Array of unique Xbox Live account identifiers for which the title needs to get PlayFab identifiers. The array cannot - * exceed 2,000 in length. + * exceed 25 in length. */ XboxLiveAccountIDs: string[]; @@ -3204,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; @@ -3572,12 +4096,24 @@ declare module PlayFabServerModels { } - export interface LinkedPlatformAccountModel { - /** Linked account email of the user on the platform, if available */ - Email?: string; - /** Authentication platform */ - Platform?: string; - /** Unique account identifier of the user on the platform */ + 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; + /** Authentication platform */ + Platform?: string; + /** Unique account identifier of the user on the platform */ PlatformUserId?: string; /** Linked account username of the user on the platform, if available */ Username?: string; @@ -3599,6 +4135,18 @@ declare module PlayFabServerModels { } + 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 }; @@ -3635,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 }; @@ -3651,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; @@ -3667,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; @@ -3723,7 +4350,82 @@ declare module PlayFabServerModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "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. */ @@ -3732,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; } @@ -3746,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; @@ -3760,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; } @@ -3909,28 +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; @@ -3945,80 +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; - /** The prediction of the player to churn within the next seven days. */ - ChurnPrediction?: 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[]; @@ -4108,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; @@ -4147,6 +4773,17 @@ declare module PlayFabServerModels { } + 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; @@ -4167,14 +4804,6 @@ declare module PlayFabServerModels { | "GoogleCloudMessaging"; - export interface PushNotificationRegistration { - /** Notification configured endpoint */ - NotificationEndpointARN?: string; - /** Push notification platform */ - Platform?: string; - - } - export interface PushNotificationRegistrationModel { /** Notification configured endpoint */ NotificationEndpointARN?: string; @@ -4213,84 +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; @@ -4552,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; @@ -4575,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; @@ -4718,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; @@ -4848,6 +5368,64 @@ declare module PlayFabServerModels { } + 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 }; @@ -4896,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; } @@ -4980,6 +5583,8 @@ declare module PlayFabServerModels { 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; } @@ -5042,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 }; @@ -5061,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 }; @@ -5159,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 */ @@ -5189,6 +5830,8 @@ declare module PlayFabServerModels { PrivateInfo?: UserPrivateAccountInfo; /** 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 */ @@ -5214,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; @@ -5251,6 +5902,11 @@ declare module PlayFabServerModels { } + type UserFamilyType = "None" + + | "Xbox" + | "Steam"; + export interface UserGameCenterInfo { /** Gamecenter identifier */ GameCenterId?: string; @@ -5341,7 +5997,10 @@ declare module PlayFabServerModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserPrivateAccountInfo { /** user email address */ @@ -5357,6 +6016,12 @@ declare module PlayFabServerModels { } + export interface UserServerCustomIdInfo { + /** Custom ID */ + CustomId?: string; + + } + export interface UserSettings { /** Boolean for whether this player is eligible for gathering device info. */ GatherDeviceInfo: boolean;