diff --git a/PlayFabSdk/package.json b/PlayFabSdk/package.json index 34c94b85..b104c0fb 100644 --- a/PlayFabSdk/package.json +++ b/PlayFabSdk/package.json @@ -1,6 +1,6 @@ { "name": "playfab-web-sdk", - "version": "1.162.231208", + "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 c77ed9e4..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -325,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); }, @@ -397,6 +401,10 @@ PlayFab.AdminApi = { 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); }, @@ -413,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); }, @@ -445,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); }, @@ -521,6 +529,10 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListOpenIdConnection", request, "X-SecretKey", callback, customData, extraHeaders); }, + ListPlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListPlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); + }, + ListVirtualCurrencyTypes: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListVirtualCurrencyTypes", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -637,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); }, @@ -693,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 4225092f..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 e9456938..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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); }, @@ -397,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); }, @@ -421,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); }, @@ -457,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); }, @@ -541,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); }, @@ -601,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 @@ -649,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 @@ -1167,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); }, @@ -1247,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 bb25b6cb..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 90eab54b..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 67dc21c8..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 213a6853..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -245,18 +245,38 @@ PlayFab.EventsApi = { 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); }, diff --git a/PlayFabSdk/src/PlayFab/PlayFabExperimentationApi.js b/PlayFabSdk/src/PlayFab/PlayFabExperimentationApi.js index 61dcba33..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 6b7d02ce..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 2a4e21b4..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 7d3fa8d5..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 a32a9ede..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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); }, @@ -489,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); }, @@ -577,6 +585,10 @@ PlayFab.MultiplayerApi = { 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 124b5d78..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -261,6 +261,10 @@ PlayFab.ProfilesApi = { 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 62% rename from PlayFabSdk/src/PlayFab/PlayFabMatchmakerApi.js rename to PlayFabSdk/src/PlayFab/PlayFabProgressionApi.js index 9e92192f..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.154.230915", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.154.230915" + 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 @@ -224,7 +224,7 @@ if(!PlayFab._internalSettings) { } PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; -PlayFab.sdkVersion = "1.154.230915"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -235,13 +235,109 @@ PlayFab.GenerateErrorReport = function (error) { return fullErrors; }; -PlayFab.MatchmakerApi = { +PlayFab.ProgressionApi = { ForgetAllCredentials: function () { PlayFab._internalSettings.sessionTicket = null; PlayFab._internalSettings.entityToken = null; }, + CreateLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/CreateLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/CreateStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/DeleteLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteLeaderboardEntries: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/DeleteLeaderboardEntries", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/DeleteStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteStatistics: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/DeleteStatistics", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetFriendLeaderboardForEntity: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetFriendLeaderboardForEntity", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboard: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboard", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboardAroundEntity: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboardAroundEntity", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboardForEntities: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboardForEntities", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/GetStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetStatistics: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/GetStatistics", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetStatisticsForEntities: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/GetStatisticsForEntities", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + IncrementLeaderboardVersion: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/IncrementLeaderboardVersion", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + IncrementStatisticVersion: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/IncrementStatisticVersion", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ListLeaderboardDefinitions: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/ListLeaderboardDefinitions", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ListStatisticDefinitions: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/ListStatisticDefinitions", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + 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 c8e2a53c..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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); }, @@ -309,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); }, @@ -377,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); }, @@ -385,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); }, @@ -401,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); }, @@ -421,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); }, @@ -445,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); }, @@ -525,6 +565,10 @@ 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); }, @@ -553,10 +597,42 @@ PlayFab.ServerApi = { 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); }, @@ -565,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); }, @@ -677,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); }, @@ -697,6 +797,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkSteamId", request, "X-SecretKey", callback, customData, extraHeaders); }, + UnlinkTwitchAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkTwitchAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + UnlinkXboxAccount: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkXboxAccount", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -733,6 +837,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UpdateCharacterStatistics", request, "X-SecretKey", callback, customData, extraHeaders); }, + UpdatePlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UpdatePlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); + }, + UpdatePlayerStatistics: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UpdatePlayerStatistics", request, "X-SecretKey", callback, customData, extraHeaders); }, 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 b58fa262..8a96312d 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabAdminApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabAdminApi.d.ts @@ -38,7 +38,7 @@ declare module PlayFabAdminModule { */ 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>; @@ -116,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. @@ -167,7 +172,8 @@ 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>; @@ -215,6 +221,11 @@ declare module PlayFabAdminModule { * 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. @@ -284,6 +286,11 @@ 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 @@ -383,6 +390,11 @@ declare module PlayFabAdminModule { * https://docs.microsoft.com/rest/api/playfab/admin/authentication/listopenidconnection */ ListOpenIdConnection(request: PlayFabAdminModels.ListOpenIdConnectionRequest, 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/admin/player-data-management/listplayercustomproperties + */ + ListPlayerCustomProperties(request: PlayFabAdminModels.ListPlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * _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 @@ -547,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. @@ -620,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>; } } @@ -697,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; @@ -778,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. */ @@ -857,6 +871,8 @@ 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; } @@ -885,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; } @@ -1096,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; @@ -1673,12 +1681,68 @@ 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; @@ -1754,6 +1818,34 @@ declare module PlayFabAdminModels { } + 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; @@ -2093,7 +2185,6 @@ declare module PlayFabAdminModels { | "UnableToConnectToDatabase" | "InternalServerError" | "InvalidReportDate" - | "ReportNotAvailable" | "DatabaseThroughputExceeded" | "InvalidGameTicket" | "ExpiredGameTicket" @@ -2469,7 +2560,6 @@ declare module PlayFabAdminModels { | "InsightsManagementGetOperationStatusInvalidParameter" | "DuplicatePurchaseTransactionId" | "EvaluationModePlayerCountExceeded" - | "GetPlayersInSegmentRateLimitExceeded" | "CloudScriptFunctionNameSizeExceeded" | "PaidInsightsFeaturesNotEnabled" | "CloudScriptAzureFunctionsQueueRequestError" @@ -2542,6 +2632,56 @@ declare module PlayFabAdminModels { | "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" @@ -2586,6 +2726,7 @@ declare module PlayFabAdminModels { | "CatalogBadRequest" | "CatalogTooManyRequests" | "InvalidCatalogItemConfiguration" + | "LegacyEconomyDisabled" | "ExportInvalidStatusUpdate" | "ExportInvalidPrefix" | "ExportBlobContainerDoesNotExist" @@ -2656,6 +2797,10 @@ declare module PlayFabAdminModels { | "ExperimentationExclusionGroupCannotDelete" | "ExperimentationExclusionGroupInvalidTrafficAllocation" | "ExperimentationExclusionGroupInvalidName" + | "ExperimentationLegacyExperimentInvalidOperation" + | "ExperimentationExperimentStopFailed" + | "ExperimentationExperimentDeleteFailed" + | "ExperimentationExperimentStartFailed" | "MaxActionDepthExceeded" | "TitleNotOnUpdatedPricingPlan" | "SegmentManagementTitleNotInFlight" @@ -2673,8 +2818,11 @@ declare module PlayFabAdminModels { | "AsyncExportNotFound" | "AsyncExportRateLimitExceeded" | "AnalyticsSegmentCountOverLimit" + | "GetSegmentPlayerCountNotInFlight" + | "GetSegmentPlayerCountRateLimitExceeded" | "SnapshotNotFound" | "InventoryApiNotImplemented" + | "InventoryCollectionDeletionDisallowed" | "LobbyDoesNotExist" | "LobbyRateLimitExceeded" | "LobbyPlayerAlreadyJoined" @@ -2717,6 +2865,16 @@ declare module PlayFabAdminModels { | "EventSinkAadNotFound" | "EventSinkDatabaseNotFound" | "EventSinkTitleUnauthorized" + | "EventSinkInsufficientRoleAssignment" + | "EventSinkContainerNotFound" + | "EventSinkTenantIdInvalid" + | "EventSinkResourceMisconfigured" + | "EventSinkAccessDenied" + | "EventSinkWriteConflict" + | "EventSinkResourceNotFound" + | "EventSinkResourceFeatureNotSupported" + | "EventSinkBucketNameInvalid" + | "EventSinkResourceUnavailable" | "OperationCanceled" | "InvalidDisplayNameRandomSuffixLength" | "AllowNonUniquePlayerDisplayNamesDisableNotAllowed" @@ -2737,9 +2895,139 @@ declare module PlayFabAdminModels { | "PlayerCustomPropertiesPropertyDoesNotExist" | "AddonAlreadyExists" | "AddonDoesntExist" - | "CopilotDisabled" - | "CopilotInvalidRequest" - | "TrueSkillUnauthorized"; + | "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 */ @@ -2883,6 +3171,27 @@ declare module PlayFabAdminModels { } + 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 GetPlayerIdFromAuthTokenRequest extends PlayFabModule.IPlayFabRequestCommon { /** The auth token of the player requesting the password reset. */ Token: string; @@ -2950,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 5,400 (90 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 }; @@ -3037,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. */ @@ -3076,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; @@ -3504,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 { } @@ -3556,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 */ @@ -3625,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; @@ -3656,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 @@ -3698,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[]; @@ -3861,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; @@ -3905,6 +4140,23 @@ declare module PlayFabAdminModels { } + export interface PolicyDiffSummary { + /** Number of new statements that would be added. */ + StatementsAdded: number; + /** Number of existing statements that would be removed. Only applicable when OverwritePolicy is true. */ + StatementsRemoved: number; + /** + * Number of existing statements that would be replaced by functionally equivalent incoming statements (e.g., same + * resource/effect/principal but different comment). + */ + StatementsReplaced: number; + /** Number of existing statements that would remain unchanged. */ + StatementsUnchanged: number; + /** Total number of statements in the resulting policy. */ + TotalResultingStatements: number; + + } + export interface PushNotificationContent { /** Text of message to send. */ Message?: string; @@ -3919,14 +4171,6 @@ declare module PlayFabAdminModels { | "GoogleCloudMessaging"; - export interface PushNotificationRegistration { - /** Notification configured endpoint */ - NotificationEndpointARN?: string; - /** Push notification platform */ - Platform?: string; - - } - export interface PushNotificationRegistrationModel { /** Notification configured endpoint */ NotificationEndpointARN?: string; @@ -4230,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. */ @@ -4812,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; @@ -5158,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; } @@ -5233,6 +5487,32 @@ declare module PlayFabAdminModels { } + 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 UpdatePlayerSharedSecretRequest extends PlayFabModule.IPlayFabRequestCommon { /** Disable or Enable this key */ Disabled: boolean; @@ -5269,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. */ @@ -5283,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; } @@ -5423,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 */ @@ -5480,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; @@ -5517,6 +5823,11 @@ declare module PlayFabAdminModels { } + type UserFamilyType = "None" + + | "Xbox" + | "Steam"; + export interface UserGameCenterInfo { /** Gamecenter identifier */ GameCenterId?: string; @@ -5607,7 +5918,10 @@ declare module PlayFabAdminModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserOriginationSegmentFilter { /** User login provider. */ @@ -5691,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 261f1e7d..3819a54d 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabClientApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabClientApi.d.ts @@ -111,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. @@ -233,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 @@ -264,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 @@ -317,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: @@ -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 @@ -761,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 @@ -870,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. @@ -1133,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; @@ -1862,6 +1928,46 @@ declare module PlayFabClientModels { | "ZMW" | "ZWD"; + export interface CustomPropertyDetails { + /** The custom property's name. */ + Name?: string; + /** The custom property's value. */ + Value?: any; + + } + + export interface DeletedPropertyDetails { + /** The name of the property which was requested to be deleted. */ + Name?: string; + /** Indicates whether or not the property was deleted. If false, no property with that name existed. */ + WasDeleted: boolean; + + } + + export interface DeletePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Optional field used for concurrency control. One can ensure that the delete operation will only be performed if the + * player's properties have not been updated by any other clients since the last version. + */ + ExpectedPropertiesVersion?: number; + /** A list of property names denoting which properties should be deleted. */ + PropertyNames: string[]; + + } + + export interface 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; + + } + export interface DeviceInfoRequest extends PlayFabModule.IPlayFabRequestCommon { /** Information posted to the PlayStream Event. Currently arbitrary, and specific to the environment sending it. */ Info?: { [key: string]: any }; @@ -1985,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[]; @@ -2006,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; } @@ -2260,7 +2369,10 @@ declare module PlayFabClientModels { * 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; } @@ -2473,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 }; @@ -2571,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[]; @@ -2604,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[]; @@ -2634,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[]; @@ -2649,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[]; @@ -2664,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[]; @@ -2679,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[]; @@ -2694,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[]; @@ -2706,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[]; @@ -2723,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[]; @@ -2738,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[]; @@ -2758,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[]; @@ -3100,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; @@ -3128,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. */ @@ -3366,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; @@ -3414,7 +3632,10 @@ declare module PlayFabClientModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface LoginResult extends PlayFabModule.IPlayFabResultCommon { /** @@ -3426,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; @@ -3448,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 @@ -3469,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 @@ -3479,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 @@ -3496,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 @@ -3532,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 @@ -3550,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 @@ -3574,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; @@ -3606,11 +3850,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 getServerAuthCode() @@ -3632,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() @@ -3660,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 @@ -3683,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 @@ -3704,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 @@ -3725,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 @@ -3748,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 @@ -3757,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 @@ -3791,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; @@ -3814,11 +4058,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; /** * Authentication token for the user, returned as a byte array from Steam, and converted to a string (for example, the byte @@ -3845,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 @@ -3864,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 @@ -3961,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 @@ -4168,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; @@ -4270,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 @@ -4474,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; } @@ -4571,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; @@ -4767,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 @@ -5026,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 }; @@ -5038,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 }; @@ -5111,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 */ @@ -5168,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; @@ -5295,7 +5620,10 @@ declare module PlayFabClientModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserPrivateAccountInfo { /** user email address */ @@ -5434,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 05c12d97..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 @@ -380,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; @@ -469,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; @@ -537,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 }; @@ -597,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 */ @@ -764,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 }; @@ -845,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 31e9d94e..733020c5 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabEconomyApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabEconomyApi.d.ts @@ -5,12 +5,12 @@ declare module PlayFabEconomyModule { ForgetAllCredentials(): void; /** - * Add inventory items. Up to 3500 stacks of items can be added to a single inventory collection. Stack size is uncapped. + * 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>; @@ -44,14 +44,21 @@ declare module PlayFabEconomyModule { */ DeleteItem(request: PlayFabEconomyModels.DeleteItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Execute a list of Inventory Operations. A maximum list of 10 operations can be performed by a single request. There is - * also a limit to 250 items that can be modified/added in a single request. For example, adding a bundle with 50 items + * 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 15 requests in 90 seconds and Title - * Entities limited to 500 requests in 10 seconds. + * RPS compared to an individual inventory operation with Player Entities limited to 60 requests in 90 seconds. * https://docs.microsoft.com/rest/api/playfab/economy/inventory/executeinventoryoperations */ ExecuteInventoryOperations(request: PlayFabEconomyModels.ExecuteInventoryOperationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Transfer a list of inventory items. A maximum list of 50 operations can be performed by a single request. When the + * response code is 202, one or more operations did not complete within the timeframe of the request. You can identify the + * pending operations by looking for OperationStatus = 'InProgress'. You can check on the operation status at anytime + * within 1 day of the request by passing the TransactionToken to the GetInventoryOperationStatus API. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/executetransferoperations + */ + ExecuteTransferOperations(request: PlayFabEconomyModels.ExecuteTransferOperationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the configuration for the catalog. Only Title Entities can call this API. There is a limit of 100 requests in 10 * seconds for this API. More information about the Catalog Config can be found here: @@ -62,13 +69,15 @@ declare module PlayFabEconomyModule { /** * 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. + * that item references data is cached and may take a few moments for changes to propagate. Note: SAS tokens provided are + * valid for 1 hour. * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getdraftitem */ GetDraftItem(request: PlayFabEconomyModels.GetDraftItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a paginated list of the items from the draft catalog. Up to 50 IDs can be retrieved in a single request. - * GetDraftItems does not work off a cache of the Catalog and should be used when trying to get recent item updates. + * 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>; @@ -86,8 +95,9 @@ declare module PlayFabEconomyModule { */ GetEntityItemReview(request: PlayFabEconomyModels.GetEntityItemReviewRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Get Inventory Collection Ids. Up to 50 Ids can be returned at once. 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. + * 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>; @@ -96,6 +106,12 @@ declare module PlayFabEconomyModule { * https://docs.microsoft.com/rest/api/playfab/economy/inventory/getinventoryitems */ GetInventoryItems(request: PlayFabEconomyModels.GetInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get the status of an inventory operation using an OperationToken. You can check on the operation status at anytime + * within 1 day of the request by passing the TransactionToken to the this API. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/getinventoryoperationstatus + */ + GetInventoryOperationStatus(request: PlayFabEconomyModels.GetInventoryOperationStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves an item from the public catalog. GetItem does not work off a cache of the Catalog and should be used when * trying to get recent item updates. However, please note that item references data is cached and may take a few moments @@ -142,15 +158,10 @@ declare module PlayFabEconomyModule { */ 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 for a player. Up to 50 Events can be returned at once. 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 and Title Entities having - * a limit of 100 requests in 10 seconds. + * 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>; @@ -161,7 +172,7 @@ declare module PlayFabEconomyModule { */ PublishDraftItem(request: PlayFabEconomyModels.PublishDraftItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Purchase an item or bundle. Up to 3500 stacks of items can be added to a single inventory collection. Stack size is + * 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 */ @@ -171,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>; @@ -245,7 +261,7 @@ declare module PlayFabEconomyModule { /** * Transfer inventory items. When transferring across collections, a 202 response indicates that the transfer did not * complete within the timeframe of the request. You can identify the pending operations by looking for OperationStatus = - * 'InProgress'. You can check on the operation status at anytime within 30 days of the request by passing the + * '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 @@ -260,7 +276,7 @@ declare module PlayFabEconomyModule { */ 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>; @@ -370,6 +386,8 @@ declare module PlayFabEconomyModels { * to 128 platforms can be listed. */ Platforms?: string[]; + /** The set of configuration that only applies to Ratings and Reviews. */ + Review?: ReviewConfig; /** A set of player entity keys that are allowed to review content. There is a maximum of 128 entities that can be added. */ ReviewerEntities?: EntityKey[]; /** The set of configuration that only applies to user generated contents. */ @@ -444,6 +462,8 @@ declare module PlayFabEconomyModels { 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. */ @@ -536,6 +556,12 @@ declare module PlayFabEconomyModels { } + export interface CategoryRatingConfig { + /** Name of the category. */ + Name?: string; + + } + type ConcernCategory = "None" | "OffensiveContent" @@ -573,10 +599,6 @@ declare module PlayFabEconomyModels { } - export interface ContentFeed { - - } - type CountryCode = "AF" | "AX" @@ -1008,7 +1030,7 @@ declare module PlayFabEconomyModels { IdempotencyId?: string; /** * The operations to run transactionally. The operations will be executed in-order sequentially and will succeed or fail as - * a batch. Up to 10 operations can be added. + * a batch. Up to 50 operations can be added. */ Operations?: InventoryOperation[]; @@ -1027,6 +1049,63 @@ 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. Each content type can have a maximum character length of 40 @@ -1085,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. */ @@ -1203,6 +1289,24 @@ declare module PlayFabEconomyModels { } + 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; @@ -1351,29 +1455,15 @@ 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. This value is optional. The default value is 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 }; @@ -1387,6 +1477,11 @@ declare module PlayFabEconomyModels { * 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; } @@ -1455,6 +1550,8 @@ declare module PlayFabEconomyModels { 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; @@ -1508,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[]; } @@ -1657,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; @@ -1679,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; @@ -1704,8 +1844,6 @@ 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. */ @@ -1759,7 +1897,7 @@ 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 */ + /** Redirect URI supplied to PlayStation :tm: Network when requesting an auth code. */ RedirectUri?: string; /** Optional Service Label to pass into the request. */ ServiceLabel?: string; @@ -1801,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; @@ -1861,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. */ @@ -1877,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. */ @@ -1890,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; @@ -1918,12 +2064,6 @@ 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; @@ -1983,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; @@ -2016,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; @@ -2099,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. */ @@ -2118,11 +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. */ @@ -2135,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; @@ -2230,6 +2384,11 @@ declare module PlayFabEconomyModels { * 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[]; diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabEventsApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabEventsApi.d.ts index ad01e759..6bcc412f 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabEventsApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabEventsApi.d.ts @@ -9,21 +9,46 @@ declare module PlayFabEventsModule { * 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 @@ -61,6 +86,95 @@ declare module PlayFabEventsModels { } + 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 }; @@ -118,6 +232,20 @@ 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 }; @@ -134,6 +262,18 @@ declare module PlayFabEventsModels { } + 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 }; @@ -148,6 +288,47 @@ declare module PlayFabEventsModels { } + 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; 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 985dea57..00000000 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabMatchmakerApi.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -/// - -declare module PlayFabMatchmakerModule { - export interface IPlayFabMatchmaker { - ForgetAllCredentials(): void; - - - } -} - -declare module PlayFabMatchmakerModels { - -} diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabMultiplayerApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabMultiplayerApi.d.ts index 753a2bb0..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 @@ -322,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 @@ -435,6 +445,11 @@ declare module PlayFabMultiplayerModule { * 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>; } } @@ -506,7 +521,10 @@ declare module PlayFabMultiplayerModels { | "CentralIndia" | "UaeNorth" | "UkSouth" - | "SwedenCentral"; + | "SwedenCentral" + | "CanadaCentral" + | "MexicoCentral" + | "WestUs3"; type AzureVmFamily = "A" @@ -518,6 +536,7 @@ declare module PlayFabMultiplayerModels { | "Dasv4" | "Dav4" | "Dadsv5" + | "Dadsv6" | "Eav4" | "Easv4" | "Ev4" @@ -527,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" @@ -556,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" @@ -568,6 +609,14 @@ declare module PlayFabMultiplayerModels { | "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" @@ -576,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" @@ -598,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. */ @@ -684,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; @@ -698,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; @@ -835,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; /** @@ -881,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. */ @@ -927,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. @@ -978,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. @@ -1029,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 @@ -1086,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. @@ -1098,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 */ @@ -1164,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 @@ -1417,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; @@ -1461,7 +1566,8 @@ declare module PlayFabMultiplayerModels { | "SameEntityLoginProvider" | "DifferentEntityLoginProvider" | "AnyEntityLoginProvider" - | "AnyPlatformTypeAndEntityLoginProvider"; + | "AnyPlatformTypeAndEntityLoginProvider" + | "OnlyServers"; export interface DynamicStandbySettings { /** @@ -1541,7 +1647,11 @@ declare module PlayFabMultiplayerModels { 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; } @@ -1641,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 }; @@ -2104,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, @@ -2141,12 +2269,6 @@ declare module PlayFabMultiplayerModels { export interface JoinLobbyAsServerResult extends PlayFabModule.IPlayFabResultCommon { /** Successfully joined lobby's id. */ LobbyId: string; - /** - * A setting that describes the state of the ServerData after JoinLobbyAsServer call is completed. It is "Initialized", the - * first time a server joins the lobby. It is "Ignored" in any subsequent JoinLobbyAsServer calls after it has been - * initialized. Any new server taking over should call UpdateLobbyAsServer to update ServerData fields. - */ - ServerDataStatus: string; } @@ -2402,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; @@ -2463,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; } @@ -2476,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; @@ -2557,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; @@ -2568,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 @@ -2811,7 +2972,7 @@ declare module PlayFabMultiplayerModels { 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 32, inclusive. */ + /** 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; @@ -2954,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. */ @@ -2998,6 +3159,8 @@ declare module PlayFabMultiplayerModels { 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. @@ -3014,6 +3177,8 @@ declare module PlayFabMultiplayerModels { 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; @@ -3066,9 +3231,25 @@ declare module PlayFabMultiplayerModels { } - type ServerDataStatus = "Initialized" + 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; + + } - | "Ignored"; + 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. */ @@ -3079,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; } @@ -3135,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; } @@ -3216,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; } @@ -3431,11 +3621,6 @@ declare module PlayFabMultiplayerModels { CustomTags?: { [key: string]: string | null }; /** The id of the lobby. */ LobbyId: 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. - */ - Server?: EntityKey; /** * 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 @@ -3450,6 +3635,11 @@ declare module PlayFabMultiplayerModels { * 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; } @@ -3514,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 @@ -3542,6 +3738,16 @@ declare module PlayFabMultiplayerModels { } + 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; diff --git a/PlayFabSdk/src/Typings/PlayFab/PlayFabProfilesApi.d.ts b/PlayFabSdk/src/Typings/PlayFab/PlayFabProfilesApi.d.ts index 3bb525f7..ce708bfc 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabProfilesApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabProfilesApi.d.ts @@ -29,6 +29,11 @@ declare module PlayFabProfilesModule { * 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 @@ -135,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. @@ -155,27 +162,13 @@ declare module PlayFabProfilesModels { } - export interface EntityStatisticAttributeValue { - /** Metadata associated with the Statistic. */ - Metadata?: string; - /** Attribute name. */ - Name?: string; - /** Attribute Statistic scores. */ - Scores?: string[]; - - } - export interface EntityStatisticValue { - /** Attribute Statistic values. */ - AttributeStatistics?: { [key: string]: EntityStatisticAttributeValue }; /** Metadata associated with the Statistic. */ Metadata?: string; /** Statistic name */ Name?: string; /** Statistic scores */ Scores?: string[]; - /** Statistic value */ - Value?: number; /** Statistic version */ Version: number; @@ -191,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; } @@ -210,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; } @@ -278,6 +275,26 @@ declare module PlayFabProfilesModels { | "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 }; @@ -329,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 16681d2b..47884a40 100644 --- a/PlayFabSdk/src/Typings/PlayFab/PlayFabServerApi.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/PlayFabServerApi.d.ts @@ -23,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 @@ -53,7 +58,7 @@ 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>; @@ -82,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 @@ -108,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>; @@ -205,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 @@ -215,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 @@ -239,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 @@ -266,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: @@ -301,6 +343,19 @@ declare module PlayFabServerModule { * 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 @@ -410,6 +465,11 @@ declare module PlayFabServerModule { * 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 @@ -445,11 +505,55 @@ declare module PlayFabServerModule { * 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. @@ -462,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 @@ -624,6 +733,31 @@ declare module PlayFabServerModule { * 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 @@ -649,6 +783,11 @@ declare module PlayFabServerModule { * 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 @@ -701,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 @@ -771,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; @@ -830,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 }; @@ -935,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; } @@ -947,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; } @@ -964,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 @@ -1106,12 +1266,6 @@ declare module PlayFabServerModels { } - type ChurnRiskLevel = "NoData" - - | "LowRisk" - | "MediumRisk" - | "HighRisk"; - type CloudScriptRevisionOption = "Live" | "Latest" @@ -1139,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; @@ -1597,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; @@ -1616,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; @@ -1753,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" @@ -1778,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[]; @@ -1799,7 +2004,7 @@ 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; } @@ -1909,7 +2114,6 @@ declare module PlayFabServerModels { | "UnableToConnectToDatabase" | "InternalServerError" | "InvalidReportDate" - | "ReportNotAvailable" | "DatabaseThroughputExceeded" | "InvalidGameTicket" | "ExpiredGameTicket" @@ -2285,7 +2489,6 @@ declare module PlayFabServerModels { | "InsightsManagementGetOperationStatusInvalidParameter" | "DuplicatePurchaseTransactionId" | "EvaluationModePlayerCountExceeded" - | "GetPlayersInSegmentRateLimitExceeded" | "CloudScriptFunctionNameSizeExceeded" | "PaidInsightsFeaturesNotEnabled" | "CloudScriptAzureFunctionsQueueRequestError" @@ -2358,6 +2561,56 @@ declare module PlayFabServerModels { | "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" @@ -2402,6 +2655,7 @@ declare module PlayFabServerModels { | "CatalogBadRequest" | "CatalogTooManyRequests" | "InvalidCatalogItemConfiguration" + | "LegacyEconomyDisabled" | "ExportInvalidStatusUpdate" | "ExportInvalidPrefix" | "ExportBlobContainerDoesNotExist" @@ -2472,6 +2726,10 @@ declare module PlayFabServerModels { | "ExperimentationExclusionGroupCannotDelete" | "ExperimentationExclusionGroupInvalidTrafficAllocation" | "ExperimentationExclusionGroupInvalidName" + | "ExperimentationLegacyExperimentInvalidOperation" + | "ExperimentationExperimentStopFailed" + | "ExperimentationExperimentDeleteFailed" + | "ExperimentationExperimentStartFailed" | "MaxActionDepthExceeded" | "TitleNotOnUpdatedPricingPlan" | "SegmentManagementTitleNotInFlight" @@ -2489,8 +2747,11 @@ declare module PlayFabServerModels { | "AsyncExportNotFound" | "AsyncExportRateLimitExceeded" | "AnalyticsSegmentCountOverLimit" + | "GetSegmentPlayerCountNotInFlight" + | "GetSegmentPlayerCountRateLimitExceeded" | "SnapshotNotFound" | "InventoryApiNotImplemented" + | "InventoryCollectionDeletionDisallowed" | "LobbyDoesNotExist" | "LobbyRateLimitExceeded" | "LobbyPlayerAlreadyJoined" @@ -2533,6 +2794,16 @@ declare module PlayFabServerModels { | "EventSinkAadNotFound" | "EventSinkDatabaseNotFound" | "EventSinkTitleUnauthorized" + | "EventSinkInsufficientRoleAssignment" + | "EventSinkContainerNotFound" + | "EventSinkTenantIdInvalid" + | "EventSinkResourceMisconfigured" + | "EventSinkAccessDenied" + | "EventSinkWriteConflict" + | "EventSinkResourceNotFound" + | "EventSinkResourceFeatureNotSupported" + | "EventSinkBucketNameInvalid" + | "EventSinkResourceUnavailable" | "OperationCanceled" | "InvalidDisplayNameRandomSuffixLength" | "AllowNonUniquePlayerDisplayNamesDisableNotAllowed" @@ -2553,9 +2824,139 @@ declare module PlayFabServerModels { | "PlayerCustomPropertiesPropertyDoesNotExist" | "AddonAlreadyExists" | "AddonDoesntExist" - | "CopilotDisabled" - | "CopilotInvalidRequest" - | "TrueSkillUnauthorized"; + | "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. */ @@ -2749,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; } @@ -2940,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 }; @@ -2969,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 5,400 (90 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; } @@ -3068,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[]; @@ -3116,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[]; @@ -3131,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[]; @@ -3143,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[]; @@ -3160,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[]; @@ -3175,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[]; @@ -3195,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[]; @@ -3236,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; @@ -3604,6 +4096,18 @@ declare module PlayFabServerModels { } + export interface LinkBattleNetAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to a specific Battle.net account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** The JSON Web Token (JWT) returned by Battle.net after login */ + IdentityToken: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + export interface LinkedPlatformAccountModel { /** Linked account email of the user on the platform, if available */ Email?: string; @@ -3688,7 +4192,7 @@ declare module PlayFabServerModels { 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. */ + /** Id of the PlayStation :tm: Network user. Also known as the PSN Account Id. */ PSNUserId: string; } @@ -3718,7 +4222,7 @@ declare module PlayFabServerModels { 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; /** Unique Steam identifier for a user. */ SteamId: string; @@ -3729,12 +4233,24 @@ declare module PlayFabServerModels { } + 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; @@ -3745,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; @@ -3801,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. */ @@ -3810,7 +4434,7 @@ 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; @@ -3829,6 +4453,22 @@ declare module PlayFabServerModels { } + 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; @@ -3987,6 +4627,22 @@ declare module PlayFabServerModels { } + 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 PlayerLeaderboardEntry { /** Title-specific display name of the user for this leaderboard entry. */ DisplayName?: string; @@ -4001,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[]; @@ -4164,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; @@ -4203,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; @@ -4223,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; @@ -4530,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; @@ -4554,7 +5127,7 @@ declare module PlayFabServerModels { } 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; @@ -4657,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; @@ -4787,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 }; @@ -4847,10 +5486,23 @@ declare module PlayFabServerModels { } + 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; } @@ -4931,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; } @@ -4993,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 }; @@ -5012,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 }; @@ -5110,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 */ @@ -5167,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; @@ -5204,6 +5902,11 @@ declare module PlayFabServerModels { } + type UserFamilyType = "None" + + | "Xbox" + | "Steam"; + export interface UserGameCenterInfo { /** Gamecenter identifier */ GameCenterId?: string; @@ -5294,7 +5997,10 @@ declare module PlayFabServerModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserPrivateAccountInfo { /** user email address */ diff --git a/PlayFabSdk/src/Typings/PlayFab/Playfab.d.ts b/PlayFabSdk/src/Typings/PlayFab/Playfab.d.ts index 83b58b30..441d70ef 100644 --- a/PlayFabSdk/src/Typings/PlayFab/Playfab.d.ts +++ b/PlayFabSdk/src/Typings/PlayFab/Playfab.d.ts @@ -9,9 +9,11 @@ /// /// /// +/// /// /// /// +/// declare module PlayFabModule { export interface ISettings { @@ -56,9 +58,11 @@ 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 @@ -73,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 dd1c9eba..3d733211 100644 --- a/PlayFabTestingExample/PlayFabApiTest.csproj +++ b/PlayFabTestingExample/PlayFabApiTest.csproj @@ -35,9 +35,11 @@ + + @@ -54,9 +56,11 @@ + + diff --git a/PlayFabTestingExample/index.html b/PlayFabTestingExample/index.html index 724b0b69..a60aec41 100644 --- a/PlayFabTestingExample/index.html +++ b/PlayFabTestingExample/index.html @@ -21,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 c77ed9e4..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -325,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); }, @@ -397,6 +401,10 @@ PlayFab.AdminApi = { 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); }, @@ -413,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); }, @@ -445,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); }, @@ -521,6 +529,10 @@ PlayFab.AdminApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListOpenIdConnection", request, "X-SecretKey", callback, customData, extraHeaders); }, + ListPlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListPlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); + }, + ListVirtualCurrencyTypes: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Admin/ListVirtualCurrencyTypes", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -637,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); }, @@ -693,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 4225092f..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 e9456938..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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); }, @@ -397,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); }, @@ -421,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); }, @@ -457,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); }, @@ -541,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); }, @@ -601,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 @@ -649,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 @@ -1167,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); }, @@ -1247,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 bb25b6cb..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 90eab54b..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 67dc21c8..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 213a6853..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -245,18 +245,38 @@ PlayFab.EventsApi = { 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); }, diff --git a/PlayFabTestingExample/src/PlayFab/PlayFabExperimentationApi.js b/PlayFabTestingExample/src/PlayFab/PlayFabExperimentationApi.js index 61dcba33..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 6b7d02ce..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 2a4e21b4..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 7d3fa8d5..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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 a32a9ede..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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); }, @@ -489,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); }, @@ -577,6 +585,10 @@ PlayFab.MultiplayerApi = { 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 124b5d78..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -261,6 +261,10 @@ PlayFab.ProfilesApi = { 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 62% rename from PlayFabTestingExample/src/PlayFab/PlayFabMatchmakerApi.js rename to PlayFabTestingExample/src/PlayFab/PlayFabProgressionApi.js index 9e92192f..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.154.230915", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.154.230915" + 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 @@ -224,7 +224,7 @@ if(!PlayFab._internalSettings) { } PlayFab.buildIdentifier = "adobuild_javascriptsdk_114"; -PlayFab.sdkVersion = "1.154.230915"; +PlayFab.sdkVersion = "1.217.260605"; PlayFab.GenerateErrorReport = function (error) { if (error == null) return ""; @@ -235,13 +235,109 @@ PlayFab.GenerateErrorReport = function (error) { return fullErrors; }; -PlayFab.MatchmakerApi = { +PlayFab.ProgressionApi = { ForgetAllCredentials: function () { PlayFab._internalSettings.sessionTicket = null; PlayFab._internalSettings.entityToken = null; }, + CreateLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/CreateLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + CreateStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/CreateStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/DeleteLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteLeaderboardEntries: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/DeleteLeaderboardEntries", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/DeleteStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + DeleteStatistics: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/DeleteStatistics", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetFriendLeaderboardForEntity: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetFriendLeaderboardForEntity", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboard: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboard", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboardAroundEntity: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboardAroundEntity", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboardDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboardDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetLeaderboardForEntities: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/GetLeaderboardForEntities", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetStatisticDefinition: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/GetStatisticDefinition", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetStatistics: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/GetStatistics", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + GetStatisticsForEntities: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/GetStatisticsForEntities", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + IncrementLeaderboardVersion: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/IncrementLeaderboardVersion", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + IncrementStatisticVersion: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/IncrementStatisticVersion", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ListLeaderboardDefinitions: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Leaderboard/ListLeaderboardDefinitions", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + ListStatisticDefinitions: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Statistic/ListStatisticDefinitions", request, "X-EntityToken", callback, customData, extraHeaders); + }, + + 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 c8e2a53c..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.162.231208", + sdkVersion: "1.217.260605", requestGetParams: { - sdk: "JavaScriptSDK-1.162.231208" + 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_116"; -PlayFab.sdkVersion = "1.162.231208"; +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); }, @@ -309,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); }, @@ -377,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); }, @@ -385,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); }, @@ -401,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); }, @@ -421,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); }, @@ -445,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); }, @@ -525,6 +565,10 @@ 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); }, @@ -553,10 +597,42 @@ PlayFab.ServerApi = { 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); }, @@ -565,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); }, @@ -677,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); }, @@ -697,6 +797,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkSteamId", request, "X-SecretKey", callback, customData, extraHeaders); }, + UnlinkTwitchAccount: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkTwitchAccount", request, "X-SecretKey", callback, customData, extraHeaders); + }, + UnlinkXboxAccount: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UnlinkXboxAccount", request, "X-SecretKey", callback, customData, extraHeaders); }, @@ -733,6 +837,10 @@ PlayFab.ServerApi = { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UpdateCharacterStatistics", request, "X-SecretKey", callback, customData, extraHeaders); }, + UpdatePlayerCustomProperties: function (request, callback, customData, extraHeaders) { + return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UpdatePlayerCustomProperties", request, "X-SecretKey", callback, customData, extraHeaders); + }, + UpdatePlayerStatistics: function (request, callback, customData, extraHeaders) { return PlayFab._internalSettings.ExecuteRequestWrapper("/Server/UpdatePlayerStatistics", request, "X-SecretKey", callback, customData, extraHeaders); }, diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFab.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFab.d.ts index 83b58b30..441d70ef 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFab.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFab.d.ts @@ -9,9 +9,11 @@ /// /// /// +/// /// /// /// +/// declare module PlayFabModule { export interface ISettings { @@ -56,9 +58,11 @@ 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 @@ -73,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 b58fa262..8a96312d 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabAdminApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabAdminApi.d.ts @@ -38,7 +38,7 @@ declare module PlayFabAdminModule { */ 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>; @@ -116,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. @@ -167,7 +172,8 @@ 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>; @@ -215,6 +221,11 @@ declare module PlayFabAdminModule { * 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. @@ -284,6 +286,11 @@ 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 @@ -383,6 +390,11 @@ declare module PlayFabAdminModule { * https://docs.microsoft.com/rest/api/playfab/admin/authentication/listopenidconnection */ ListOpenIdConnection(request: PlayFabAdminModels.ListOpenIdConnectionRequest, 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/admin/player-data-management/listplayercustomproperties + */ + ListPlayerCustomProperties(request: PlayFabAdminModels.ListPlayerCustomPropertiesRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * _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 @@ -547,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. @@ -620,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>; } } @@ -697,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; @@ -778,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. */ @@ -857,6 +871,8 @@ 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; } @@ -885,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; } @@ -1096,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; @@ -1673,12 +1681,68 @@ 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; @@ -1754,6 +1818,34 @@ declare module PlayFabAdminModels { } + 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; @@ -2093,7 +2185,6 @@ declare module PlayFabAdminModels { | "UnableToConnectToDatabase" | "InternalServerError" | "InvalidReportDate" - | "ReportNotAvailable" | "DatabaseThroughputExceeded" | "InvalidGameTicket" | "ExpiredGameTicket" @@ -2469,7 +2560,6 @@ declare module PlayFabAdminModels { | "InsightsManagementGetOperationStatusInvalidParameter" | "DuplicatePurchaseTransactionId" | "EvaluationModePlayerCountExceeded" - | "GetPlayersInSegmentRateLimitExceeded" | "CloudScriptFunctionNameSizeExceeded" | "PaidInsightsFeaturesNotEnabled" | "CloudScriptAzureFunctionsQueueRequestError" @@ -2542,6 +2632,56 @@ declare module PlayFabAdminModels { | "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" @@ -2586,6 +2726,7 @@ declare module PlayFabAdminModels { | "CatalogBadRequest" | "CatalogTooManyRequests" | "InvalidCatalogItemConfiguration" + | "LegacyEconomyDisabled" | "ExportInvalidStatusUpdate" | "ExportInvalidPrefix" | "ExportBlobContainerDoesNotExist" @@ -2656,6 +2797,10 @@ declare module PlayFabAdminModels { | "ExperimentationExclusionGroupCannotDelete" | "ExperimentationExclusionGroupInvalidTrafficAllocation" | "ExperimentationExclusionGroupInvalidName" + | "ExperimentationLegacyExperimentInvalidOperation" + | "ExperimentationExperimentStopFailed" + | "ExperimentationExperimentDeleteFailed" + | "ExperimentationExperimentStartFailed" | "MaxActionDepthExceeded" | "TitleNotOnUpdatedPricingPlan" | "SegmentManagementTitleNotInFlight" @@ -2673,8 +2818,11 @@ declare module PlayFabAdminModels { | "AsyncExportNotFound" | "AsyncExportRateLimitExceeded" | "AnalyticsSegmentCountOverLimit" + | "GetSegmentPlayerCountNotInFlight" + | "GetSegmentPlayerCountRateLimitExceeded" | "SnapshotNotFound" | "InventoryApiNotImplemented" + | "InventoryCollectionDeletionDisallowed" | "LobbyDoesNotExist" | "LobbyRateLimitExceeded" | "LobbyPlayerAlreadyJoined" @@ -2717,6 +2865,16 @@ declare module PlayFabAdminModels { | "EventSinkAadNotFound" | "EventSinkDatabaseNotFound" | "EventSinkTitleUnauthorized" + | "EventSinkInsufficientRoleAssignment" + | "EventSinkContainerNotFound" + | "EventSinkTenantIdInvalid" + | "EventSinkResourceMisconfigured" + | "EventSinkAccessDenied" + | "EventSinkWriteConflict" + | "EventSinkResourceNotFound" + | "EventSinkResourceFeatureNotSupported" + | "EventSinkBucketNameInvalid" + | "EventSinkResourceUnavailable" | "OperationCanceled" | "InvalidDisplayNameRandomSuffixLength" | "AllowNonUniquePlayerDisplayNamesDisableNotAllowed" @@ -2737,9 +2895,139 @@ declare module PlayFabAdminModels { | "PlayerCustomPropertiesPropertyDoesNotExist" | "AddonAlreadyExists" | "AddonDoesntExist" - | "CopilotDisabled" - | "CopilotInvalidRequest" - | "TrueSkillUnauthorized"; + | "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 */ @@ -2883,6 +3171,27 @@ declare module PlayFabAdminModels { } + 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 GetPlayerIdFromAuthTokenRequest extends PlayFabModule.IPlayFabRequestCommon { /** The auth token of the player requesting the password reset. */ Token: string; @@ -2950,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 5,400 (90 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 }; @@ -3037,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. */ @@ -3076,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; @@ -3504,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 { } @@ -3556,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 */ @@ -3625,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; @@ -3656,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 @@ -3698,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[]; @@ -3861,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; @@ -3905,6 +4140,23 @@ declare module PlayFabAdminModels { } + export interface PolicyDiffSummary { + /** Number of new statements that would be added. */ + StatementsAdded: number; + /** Number of existing statements that would be removed. Only applicable when OverwritePolicy is true. */ + StatementsRemoved: number; + /** + * Number of existing statements that would be replaced by functionally equivalent incoming statements (e.g., same + * resource/effect/principal but different comment). + */ + StatementsReplaced: number; + /** Number of existing statements that would remain unchanged. */ + StatementsUnchanged: number; + /** Total number of statements in the resulting policy. */ + TotalResultingStatements: number; + + } + export interface PushNotificationContent { /** Text of message to send. */ Message?: string; @@ -3919,14 +4171,6 @@ declare module PlayFabAdminModels { | "GoogleCloudMessaging"; - export interface PushNotificationRegistration { - /** Notification configured endpoint */ - NotificationEndpointARN?: string; - /** Push notification platform */ - Platform?: string; - - } - export interface PushNotificationRegistrationModel { /** Notification configured endpoint */ NotificationEndpointARN?: string; @@ -4230,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. */ @@ -4812,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; @@ -5158,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; } @@ -5233,6 +5487,32 @@ declare module PlayFabAdminModels { } + 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 UpdatePlayerSharedSecretRequest extends PlayFabModule.IPlayFabRequestCommon { /** Disable or Enable this key */ Disabled: boolean; @@ -5269,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. */ @@ -5283,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; } @@ -5423,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 */ @@ -5480,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; @@ -5517,6 +5823,11 @@ declare module PlayFabAdminModels { } + type UserFamilyType = "None" + + | "Xbox" + | "Steam"; + export interface UserGameCenterInfo { /** Gamecenter identifier */ GameCenterId?: string; @@ -5607,7 +5918,10 @@ declare module PlayFabAdminModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserOriginationSegmentFilter { /** User login provider. */ @@ -5691,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 261f1e7d..3819a54d 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabClientApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabClientApi.d.ts @@ -111,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. @@ -233,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 @@ -264,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 @@ -317,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: @@ -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 @@ -761,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 @@ -870,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. @@ -1133,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; @@ -1862,6 +1928,46 @@ declare module PlayFabClientModels { | "ZMW" | "ZWD"; + export interface CustomPropertyDetails { + /** The custom property's name. */ + Name?: string; + /** The custom property's value. */ + Value?: any; + + } + + export interface DeletedPropertyDetails { + /** The name of the property which was requested to be deleted. */ + Name?: string; + /** Indicates whether or not the property was deleted. If false, no property with that name existed. */ + WasDeleted: boolean; + + } + + export interface DeletePlayerCustomPropertiesRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** + * Optional field used for concurrency control. One can ensure that the delete operation will only be performed if the + * player's properties have not been updated by any other clients since the last version. + */ + ExpectedPropertiesVersion?: number; + /** A list of property names denoting which properties should be deleted. */ + PropertyNames: string[]; + + } + + export interface 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; + + } + export interface DeviceInfoRequest extends PlayFabModule.IPlayFabRequestCommon { /** Information posted to the PlayStream Event. Currently arbitrary, and specific to the environment sending it. */ Info?: { [key: string]: any }; @@ -1985,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[]; @@ -2006,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; } @@ -2260,7 +2369,10 @@ declare module PlayFabClientModels { * 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; } @@ -2473,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 }; @@ -2571,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[]; @@ -2604,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[]; @@ -2634,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[]; @@ -2649,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[]; @@ -2664,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[]; @@ -2679,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[]; @@ -2694,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[]; @@ -2706,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[]; @@ -2723,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[]; @@ -2738,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[]; @@ -2758,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[]; @@ -3100,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; @@ -3128,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. */ @@ -3366,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; @@ -3414,7 +3632,10 @@ declare module PlayFabClientModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface LoginResult extends PlayFabModule.IPlayFabResultCommon { /** @@ -3426,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; @@ -3448,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 @@ -3469,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 @@ -3479,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 @@ -3496,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 @@ -3532,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 @@ -3550,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 @@ -3574,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; @@ -3606,11 +3850,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 getServerAuthCode() @@ -3632,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() @@ -3660,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 @@ -3683,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 @@ -3704,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 @@ -3725,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 @@ -3748,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 @@ -3757,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 @@ -3791,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; @@ -3814,11 +4058,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; /** * Authentication token for the user, returned as a byte array from Steam, and converted to a string (for example, the byte @@ -3845,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 @@ -3864,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 @@ -3961,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 @@ -4168,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; @@ -4270,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 @@ -4474,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; } @@ -4571,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; @@ -4767,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 @@ -5026,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 }; @@ -5038,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 }; @@ -5111,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 */ @@ -5168,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; @@ -5295,7 +5620,10 @@ declare module PlayFabClientModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserPrivateAccountInfo { /** user email address */ @@ -5434,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 05c12d97..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 @@ -380,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; @@ -469,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; @@ -537,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 }; @@ -597,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 */ @@ -764,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 }; @@ -845,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 31e9d94e..733020c5 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabEconomyApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabEconomyApi.d.ts @@ -5,12 +5,12 @@ declare module PlayFabEconomyModule { ForgetAllCredentials(): void; /** - * Add inventory items. Up to 3500 stacks of items can be added to a single inventory collection. Stack size is uncapped. + * 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>; @@ -44,14 +44,21 @@ declare module PlayFabEconomyModule { */ DeleteItem(request: PlayFabEconomyModels.DeleteItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Execute a list of Inventory Operations. A maximum list of 10 operations can be performed by a single request. There is - * also a limit to 250 items that can be modified/added in a single request. For example, adding a bundle with 50 items + * 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 15 requests in 90 seconds and Title - * Entities limited to 500 requests in 10 seconds. + * RPS compared to an individual inventory operation with Player Entities limited to 60 requests in 90 seconds. * https://docs.microsoft.com/rest/api/playfab/economy/inventory/executeinventoryoperations */ ExecuteInventoryOperations(request: PlayFabEconomyModels.ExecuteInventoryOperationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Transfer a list of inventory items. A maximum list of 50 operations can be performed by a single request. When the + * response code is 202, one or more operations did not complete within the timeframe of the request. You can identify the + * pending operations by looking for OperationStatus = 'InProgress'. You can check on the operation status at anytime + * within 1 day of the request by passing the TransactionToken to the GetInventoryOperationStatus API. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/executetransferoperations + */ + ExecuteTransferOperations(request: PlayFabEconomyModels.ExecuteTransferOperationsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Gets the configuration for the catalog. Only Title Entities can call this API. There is a limit of 100 requests in 10 * seconds for this API. More information about the Catalog Config can be found here: @@ -62,13 +69,15 @@ declare module PlayFabEconomyModule { /** * 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. + * that item references data is cached and may take a few moments for changes to propagate. Note: SAS tokens provided are + * valid for 1 hour. * https://docs.microsoft.com/rest/api/playfab/economy/catalog/getdraftitem */ GetDraftItem(request: PlayFabEconomyModels.GetDraftItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves a paginated list of the items from the draft catalog. Up to 50 IDs can be retrieved in a single request. - * GetDraftItems does not work off a cache of the Catalog and should be used when trying to get recent item updates. + * 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>; @@ -86,8 +95,9 @@ declare module PlayFabEconomyModule { */ GetEntityItemReview(request: PlayFabEconomyModels.GetEntityItemReviewRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Get Inventory Collection Ids. Up to 50 Ids can be returned at once. 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. + * 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>; @@ -96,6 +106,12 @@ declare module PlayFabEconomyModule { * https://docs.microsoft.com/rest/api/playfab/economy/inventory/getinventoryitems */ GetInventoryItems(request: PlayFabEconomyModels.GetInventoryItemsRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; + /** + * Get the status of an inventory operation using an OperationToken. You can check on the operation status at anytime + * within 1 day of the request by passing the TransactionToken to the this API. + * https://docs.microsoft.com/rest/api/playfab/economy/inventory/getinventoryoperationstatus + */ + GetInventoryOperationStatus(request: PlayFabEconomyModels.GetInventoryOperationStatusRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** * Retrieves an item from the public catalog. GetItem does not work off a cache of the Catalog and should be used when * trying to get recent item updates. However, please note that item references data is cached and may take a few moments @@ -142,15 +158,10 @@ declare module PlayFabEconomyModule { */ 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 for a player. Up to 50 Events can be returned at once. 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 and Title Entities having - * a limit of 100 requests in 10 seconds. + * 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>; @@ -161,7 +172,7 @@ declare module PlayFabEconomyModule { */ PublishDraftItem(request: PlayFabEconomyModels.PublishDraftItemRequest, callback: PlayFabModule.ApiCallback, customData?: any, extraHeaders?: { [key: string]: string }): Promise>; /** - * Purchase an item or bundle. Up to 3500 stacks of items can be added to a single inventory collection. Stack size is + * 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 */ @@ -171,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>; @@ -245,7 +261,7 @@ declare module PlayFabEconomyModule { /** * Transfer inventory items. When transferring across collections, a 202 response indicates that the transfer did not * complete within the timeframe of the request. You can identify the pending operations by looking for OperationStatus = - * 'InProgress'. You can check on the operation status at anytime within 30 days of the request by passing the + * '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 @@ -260,7 +276,7 @@ declare module PlayFabEconomyModule { */ 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>; @@ -370,6 +386,8 @@ declare module PlayFabEconomyModels { * to 128 platforms can be listed. */ Platforms?: string[]; + /** The set of configuration that only applies to Ratings and Reviews. */ + Review?: ReviewConfig; /** A set of player entity keys that are allowed to review content. There is a maximum of 128 entities that can be added. */ ReviewerEntities?: EntityKey[]; /** The set of configuration that only applies to user generated contents. */ @@ -444,6 +462,8 @@ declare module PlayFabEconomyModels { 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. */ @@ -536,6 +556,12 @@ declare module PlayFabEconomyModels { } + export interface CategoryRatingConfig { + /** Name of the category. */ + Name?: string; + + } + type ConcernCategory = "None" | "OffensiveContent" @@ -573,10 +599,6 @@ declare module PlayFabEconomyModels { } - export interface ContentFeed { - - } - type CountryCode = "AF" | "AX" @@ -1008,7 +1030,7 @@ declare module PlayFabEconomyModels { IdempotencyId?: string; /** * The operations to run transactionally. The operations will be executed in-order sequentially and will succeed or fail as - * a batch. Up to 10 operations can be added. + * a batch. Up to 50 operations can be added. */ Operations?: InventoryOperation[]; @@ -1027,6 +1049,63 @@ 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. Each content type can have a maximum character length of 40 @@ -1085,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. */ @@ -1203,6 +1289,24 @@ declare module PlayFabEconomyModels { } + 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; @@ -1351,29 +1455,15 @@ 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. This value is optional. The default value is 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 }; @@ -1387,6 +1477,11 @@ declare module PlayFabEconomyModels { * 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; } @@ -1455,6 +1550,8 @@ declare module PlayFabEconomyModels { 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; @@ -1508,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[]; } @@ -1657,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; @@ -1679,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; @@ -1704,8 +1844,6 @@ 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. */ @@ -1759,7 +1897,7 @@ 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 */ + /** Redirect URI supplied to PlayStation :tm: Network when requesting an auth code. */ RedirectUri?: string; /** Optional Service Label to pass into the request. */ ServiceLabel?: string; @@ -1801,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; @@ -1861,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. */ @@ -1877,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. */ @@ -1890,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; @@ -1918,12 +2064,6 @@ 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; @@ -1983,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; @@ -2016,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; @@ -2099,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. */ @@ -2118,11 +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. */ @@ -2135,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; @@ -2230,6 +2384,11 @@ declare module PlayFabEconomyModels { * 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[]; diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabEventsApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabEventsApi.d.ts index ad01e759..6bcc412f 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabEventsApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabEventsApi.d.ts @@ -9,21 +9,46 @@ declare module PlayFabEventsModule { * 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 @@ -61,6 +86,95 @@ declare module PlayFabEventsModels { } + 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 }; @@ -118,6 +232,20 @@ 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 }; @@ -134,6 +262,18 @@ declare module PlayFabEventsModels { } + 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 }; @@ -148,6 +288,47 @@ declare module PlayFabEventsModels { } + 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; 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 985dea57..00000000 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabMatchmakerApi.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -/// - -declare module PlayFabMatchmakerModule { - export interface IPlayFabMatchmaker { - ForgetAllCredentials(): void; - - - } -} - -declare module PlayFabMatchmakerModels { - -} diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabMultiplayerApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabMultiplayerApi.d.ts index 753a2bb0..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 @@ -322,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 @@ -435,6 +445,11 @@ declare module PlayFabMultiplayerModule { * 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>; } } @@ -506,7 +521,10 @@ declare module PlayFabMultiplayerModels { | "CentralIndia" | "UaeNorth" | "UkSouth" - | "SwedenCentral"; + | "SwedenCentral" + | "CanadaCentral" + | "MexicoCentral" + | "WestUs3"; type AzureVmFamily = "A" @@ -518,6 +536,7 @@ declare module PlayFabMultiplayerModels { | "Dasv4" | "Dav4" | "Dadsv5" + | "Dadsv6" | "Eav4" | "Easv4" | "Ev4" @@ -527,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" @@ -556,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" @@ -568,6 +609,14 @@ declare module PlayFabMultiplayerModels { | "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" @@ -576,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" @@ -598,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. */ @@ -684,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; @@ -698,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; @@ -835,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; /** @@ -881,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. */ @@ -927,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. @@ -978,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. @@ -1029,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 @@ -1086,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. @@ -1098,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 */ @@ -1164,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 @@ -1417,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; @@ -1461,7 +1566,8 @@ declare module PlayFabMultiplayerModels { | "SameEntityLoginProvider" | "DifferentEntityLoginProvider" | "AnyEntityLoginProvider" - | "AnyPlatformTypeAndEntityLoginProvider"; + | "AnyPlatformTypeAndEntityLoginProvider" + | "OnlyServers"; export interface DynamicStandbySettings { /** @@ -1541,7 +1647,11 @@ declare module PlayFabMultiplayerModels { 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; } @@ -1641,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 }; @@ -2104,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, @@ -2141,12 +2269,6 @@ declare module PlayFabMultiplayerModels { export interface JoinLobbyAsServerResult extends PlayFabModule.IPlayFabResultCommon { /** Successfully joined lobby's id. */ LobbyId: string; - /** - * A setting that describes the state of the ServerData after JoinLobbyAsServer call is completed. It is "Initialized", the - * first time a server joins the lobby. It is "Ignored" in any subsequent JoinLobbyAsServer calls after it has been - * initialized. Any new server taking over should call UpdateLobbyAsServer to update ServerData fields. - */ - ServerDataStatus: string; } @@ -2402,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; @@ -2463,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; } @@ -2476,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; @@ -2557,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; @@ -2568,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 @@ -2811,7 +2972,7 @@ declare module PlayFabMultiplayerModels { 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 32, inclusive. */ + /** 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; @@ -2954,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. */ @@ -2998,6 +3159,8 @@ declare module PlayFabMultiplayerModels { 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. @@ -3014,6 +3177,8 @@ declare module PlayFabMultiplayerModels { 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; @@ -3066,9 +3231,25 @@ declare module PlayFabMultiplayerModels { } - type ServerDataStatus = "Initialized" + 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; + + } - | "Ignored"; + 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. */ @@ -3079,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; } @@ -3135,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; } @@ -3216,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; } @@ -3431,11 +3621,6 @@ declare module PlayFabMultiplayerModels { CustomTags?: { [key: string]: string | null }; /** The id of the lobby. */ LobbyId: 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. - */ - Server?: EntityKey; /** * 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 @@ -3450,6 +3635,11 @@ declare module PlayFabMultiplayerModels { * 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; } @@ -3514,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 @@ -3542,6 +3738,16 @@ declare module PlayFabMultiplayerModels { } + 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; diff --git a/PlayFabTestingExample/src/typings/PlayFab/PlayFabProfilesApi.d.ts b/PlayFabTestingExample/src/typings/PlayFab/PlayFabProfilesApi.d.ts index 3bb525f7..ce708bfc 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabProfilesApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabProfilesApi.d.ts @@ -29,6 +29,11 @@ declare module PlayFabProfilesModule { * 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 @@ -135,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. @@ -155,27 +162,13 @@ declare module PlayFabProfilesModels { } - export interface EntityStatisticAttributeValue { - /** Metadata associated with the Statistic. */ - Metadata?: string; - /** Attribute name. */ - Name?: string; - /** Attribute Statistic scores. */ - Scores?: string[]; - - } - export interface EntityStatisticValue { - /** Attribute Statistic values. */ - AttributeStatistics?: { [key: string]: EntityStatisticAttributeValue }; /** Metadata associated with the Statistic. */ Metadata?: string; /** Statistic name */ Name?: string; /** Statistic scores */ Scores?: string[]; - /** Statistic value */ - Value?: number; /** Statistic version */ Version: number; @@ -191,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; } @@ -210,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; } @@ -278,6 +275,26 @@ declare module PlayFabProfilesModels { | "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 }; @@ -329,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 16681d2b..47884a40 100644 --- a/PlayFabTestingExample/src/typings/PlayFab/PlayFabServerApi.d.ts +++ b/PlayFabTestingExample/src/typings/PlayFab/PlayFabServerApi.d.ts @@ -23,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 @@ -53,7 +58,7 @@ 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>; @@ -82,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 @@ -108,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>; @@ -205,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 @@ -215,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 @@ -239,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 @@ -266,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: @@ -301,6 +343,19 @@ declare module PlayFabServerModule { * 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 @@ -410,6 +465,11 @@ declare module PlayFabServerModule { * 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 @@ -445,11 +505,55 @@ declare module PlayFabServerModule { * 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. @@ -462,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 @@ -624,6 +733,31 @@ declare module PlayFabServerModule { * 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 @@ -649,6 +783,11 @@ declare module PlayFabServerModule { * 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 @@ -701,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 @@ -771,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; @@ -830,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 }; @@ -935,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; } @@ -947,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; } @@ -964,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 @@ -1106,12 +1266,6 @@ declare module PlayFabServerModels { } - type ChurnRiskLevel = "NoData" - - | "LowRisk" - | "MediumRisk" - | "HighRisk"; - type CloudScriptRevisionOption = "Live" | "Latest" @@ -1139,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; @@ -1597,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; @@ -1616,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; @@ -1753,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" @@ -1778,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[]; @@ -1799,7 +2004,7 @@ 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; } @@ -1909,7 +2114,6 @@ declare module PlayFabServerModels { | "UnableToConnectToDatabase" | "InternalServerError" | "InvalidReportDate" - | "ReportNotAvailable" | "DatabaseThroughputExceeded" | "InvalidGameTicket" | "ExpiredGameTicket" @@ -2285,7 +2489,6 @@ declare module PlayFabServerModels { | "InsightsManagementGetOperationStatusInvalidParameter" | "DuplicatePurchaseTransactionId" | "EvaluationModePlayerCountExceeded" - | "GetPlayersInSegmentRateLimitExceeded" | "CloudScriptFunctionNameSizeExceeded" | "PaidInsightsFeaturesNotEnabled" | "CloudScriptAzureFunctionsQueueRequestError" @@ -2358,6 +2561,56 @@ declare module PlayFabServerModels { | "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" @@ -2402,6 +2655,7 @@ declare module PlayFabServerModels { | "CatalogBadRequest" | "CatalogTooManyRequests" | "InvalidCatalogItemConfiguration" + | "LegacyEconomyDisabled" | "ExportInvalidStatusUpdate" | "ExportInvalidPrefix" | "ExportBlobContainerDoesNotExist" @@ -2472,6 +2726,10 @@ declare module PlayFabServerModels { | "ExperimentationExclusionGroupCannotDelete" | "ExperimentationExclusionGroupInvalidTrafficAllocation" | "ExperimentationExclusionGroupInvalidName" + | "ExperimentationLegacyExperimentInvalidOperation" + | "ExperimentationExperimentStopFailed" + | "ExperimentationExperimentDeleteFailed" + | "ExperimentationExperimentStartFailed" | "MaxActionDepthExceeded" | "TitleNotOnUpdatedPricingPlan" | "SegmentManagementTitleNotInFlight" @@ -2489,8 +2747,11 @@ declare module PlayFabServerModels { | "AsyncExportNotFound" | "AsyncExportRateLimitExceeded" | "AnalyticsSegmentCountOverLimit" + | "GetSegmentPlayerCountNotInFlight" + | "GetSegmentPlayerCountRateLimitExceeded" | "SnapshotNotFound" | "InventoryApiNotImplemented" + | "InventoryCollectionDeletionDisallowed" | "LobbyDoesNotExist" | "LobbyRateLimitExceeded" | "LobbyPlayerAlreadyJoined" @@ -2533,6 +2794,16 @@ declare module PlayFabServerModels { | "EventSinkAadNotFound" | "EventSinkDatabaseNotFound" | "EventSinkTitleUnauthorized" + | "EventSinkInsufficientRoleAssignment" + | "EventSinkContainerNotFound" + | "EventSinkTenantIdInvalid" + | "EventSinkResourceMisconfigured" + | "EventSinkAccessDenied" + | "EventSinkWriteConflict" + | "EventSinkResourceNotFound" + | "EventSinkResourceFeatureNotSupported" + | "EventSinkBucketNameInvalid" + | "EventSinkResourceUnavailable" | "OperationCanceled" | "InvalidDisplayNameRandomSuffixLength" | "AllowNonUniquePlayerDisplayNamesDisableNotAllowed" @@ -2553,9 +2824,139 @@ declare module PlayFabServerModels { | "PlayerCustomPropertiesPropertyDoesNotExist" | "AddonAlreadyExists" | "AddonDoesntExist" - | "CopilotDisabled" - | "CopilotInvalidRequest" - | "TrueSkillUnauthorized"; + | "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. */ @@ -2749,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; } @@ -2940,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 }; @@ -2969,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 5,400 (90 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; } @@ -3068,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[]; @@ -3116,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[]; @@ -3131,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[]; @@ -3143,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[]; @@ -3160,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[]; @@ -3175,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[]; @@ -3195,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[]; @@ -3236,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; @@ -3604,6 +4096,18 @@ declare module PlayFabServerModels { } + export interface LinkBattleNetAccountRequest extends PlayFabModule.IPlayFabRequestCommon { + /** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */ + CustomTags?: { [key: string]: string | null }; + /** If another user is already linked to a specific Battle.net account, unlink the other user and re-link. */ + ForceLink?: boolean; + /** The JSON Web Token (JWT) returned by Battle.net after login */ + IdentityToken: string; + /** Unique PlayFab assigned ID of the user on whom the operation will be performed. */ + PlayFabId: string; + + } + export interface LinkedPlatformAccountModel { /** Linked account email of the user on the platform, if available */ Email?: string; @@ -3688,7 +4192,7 @@ declare module PlayFabServerModels { 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. */ + /** Id of the PlayStation :tm: Network user. Also known as the PSN Account Id. */ PSNUserId: string; } @@ -3718,7 +4222,7 @@ declare module PlayFabServerModels { 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; /** Unique Steam identifier for a user. */ SteamId: string; @@ -3729,12 +4233,24 @@ declare module PlayFabServerModels { } + 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; @@ -3745,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; @@ -3801,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. */ @@ -3810,7 +4434,7 @@ 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; @@ -3829,6 +4453,22 @@ declare module PlayFabServerModels { } + 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; @@ -3987,6 +4627,22 @@ declare module PlayFabServerModels { } + 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 PlayerLeaderboardEntry { /** Title-specific display name of the user for this leaderboard entry. */ DisplayName?: string; @@ -4001,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[]; @@ -4164,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; @@ -4203,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; @@ -4223,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; @@ -4530,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; @@ -4554,7 +5127,7 @@ declare module PlayFabServerModels { } 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; @@ -4657,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; @@ -4787,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 }; @@ -4847,10 +5486,23 @@ declare module PlayFabServerModels { } + 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; } @@ -4931,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; } @@ -4993,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 }; @@ -5012,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 }; @@ -5110,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 */ @@ -5167,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; @@ -5204,6 +5902,11 @@ declare module PlayFabServerModels { } + type UserFamilyType = "None" + + | "Xbox" + | "Steam"; + export interface UserGameCenterInfo { /** Gamecenter identifier */ GameCenterId?: string; @@ -5294,7 +5997,10 @@ declare module PlayFabServerModels { | "OpenIdConnect" | "Apple" | "NintendoSwitchAccount" - | "GooglePlayGames"; + | "GooglePlayGames" + | "XboxMobileStore" + | "King" + | "BattleNet"; export interface UserPrivateAccountInfo { /** user email address */