> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# PlayFab Release Notes 2018

> PlayFab Services SDK release notes for 2018, documenting SDK updates, new API features, breaking changes, and bug fixes across the year's releases.

## 181218

Date: December 18, 2018

### XPlatCppSdk specific changes

* [XPlatCppSdk](https://github.com/PlayFab/XPlatCppSdk) -**SDK Breaking Change** : Updated the folder structure for the `XPlatCppSdk` repo. If you're using the SDK with project references, an update to vcxproj files path would be required.
  * Adding XBOX support to the `XPlatCppSdk`. Refer to the C++ quickstart for XBOX.
  * **New API**
  * Added `PlayFabEventApi` to support Heavyweight (low throughput) and Lightweight (high throughput) custom events.

### UnrealMarketplacePlugin specific changes

* [UnrealMarketplacePlugin](https://github.com/PlayFab/UnrealMarketplacePlugin)
  * Adding support for Unreal Engine 4.21

## 181204

Date: December 4, 2018

### XPlatCppSDK specific changes

* [XPlatCppSDK](https://github.com/PlayFab/XPlatCppSDK)
  * Added support to build external dependencies.
  * Updated NuGet composition. This isn't a breaking change. Added binaries for the external dependencies to the NuGet and updated the properties sheet.
  * Bug fixes for **QoSAPI**.

### CSharpSDK specific changes

* [CSharpSDK](https://github.com/PlayFab/CSharpSDK)
  * Added .NET Standard 1.1/2.0 (plus .NET Core) support.
  * Updated NuGet composition. The package now contains binaries for .NET Standard 1.1/2.0 and portables also.
  * Migrated VS project files to VS 2017 standard.

### UnitySDK specific changes

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * **SDK Breaking Change**: The `SimpleGet` success callback signature has changed, and now must accept a new single parameter of a byte\[].
  * Added `SimplePost`.

## 181105

Date: November 5, 2018

### API changes

* PlayFab now supports login and account-linking with `OpenID`.
* More XboxLive ID support, and enabling XBOX login via server.

In preparation for wider release of the service, we're rolling out PlayFab Multiplayer Servers 2.0 APIs. See [PlayFab Multiplayer Servers 2.0 (Thunderhead)](/services/playfab/multiplayer/servers) for more information

## 181001

Date: October 1, 2018

### API changes

* Various deprecations took effect, and we removed those elements from SDKs and documentation.
  * Hid some Admin API methods related to unreleased features.
  * `server.DeleteUsers` deprecation has taken effect.
  * A field deprecation for `ServerHostname`, spread across various matchmaking related calls in admin, client, matchmaker, and server APIs has taken effect. `ServerIPV4Address` is the replacement.

### UnitySDK changes

* Minor fixes/improvements to `ScreenTime` analytics.

### All SDKs

* The automated-build branch structure for GitHub repos is changing.
  * The normal customer facing branches, "versioned" and "master" are unchanged.

## 180924

Date: September 24, 2018

### API changes

* Adding Metadata to the [DeleteMasterPlayerAccountRequest](xref:titleid.playfabapi.com.admin.accountmanagement.deletemasterplayeraccount#deletemasterplayeraccountrequest) Model.
* Bug fixes in the Unreal Marketplace Plugin to expand supported versions.

## 180917

Date: September 17, 2018

### API changes

* The Server API method `DeleteUsers` is deprecated, and replaced with [DeletePlayer](xref:titleid.playfabapi.com.server.accountmanagement.deleteplayer)
* Unreal Marketplace Plugin:
  * Updated Marketplace Plugin to include our Blueprint interface.
  * [New Unreal Engine quickstart guide](/services/playfab/sdks/unreal/quickstart)
  * [View in Unreal Marketplace](https://www.unrealengine.com/marketplace/playfab-SDK)

## 180906

Date: September 6, 2018

### New API

* **Localization**

### New PlayStream event documentation

* [client\_focus\_change](/services/playfab/api-references/events/Session/client-focus-change)
* [client\_session\_start](/services/playfab/api-references/events/Session/client-session-start)
* [player\_device\_info](/services/playfab/api-references/events/PlayerIdentity/player-device-info)

## 180829

Date: August 29, 2018

### API changes

* renaming `Entity.TypeString` to `Entity.Type`.
* renaming `EmptyResult` to \[EmptyResponse].(`xref:titleid.playfabapi.com.groups.groups.removemembers#emptyresponse`)
* Renamed most Authentication function calls like `GameServer` to `MutliplayerServer`.
* [Admin.GetUserAccountInfo](xref:titleid.playfabapi.com.admin.accountmanagement.getuseraccountinfo) has more detailed platform information.

### Objective C specific changes

* Various bug fixes and refactors.
* Changing AttributeInstallRequest to be API-specific.

### Unreal Engine specific changes

* Adding in UE marketplace plugin to SDK generator.

## 180809

Date: August 9, 2018

### API group changes

* We've separated the Entity API Group into multiple new API Groups.
* This is a big SDK breaking change for anybody using the former Entity API.
* See our [Upgrade Guide](/services/playfab/live-service-management/game-configuration/entities/entity-api-restructure-upgrade-tutorial)!
* (Note: the links for blog and upgrade guide may not work yet, they're almost done.)

### API changes

* **New API Methods:**
  * The following APIs are released and visible in SDK, but the accompanying documentation isn't ready yet:
    * client.[LoginWithNintendoSwitchDeviceId](xref:titleid.playfabapi.com.client.authentication.loginwithnintendoswitchdeviceid)
    * client.[UnlinkNintendoSwitchDeviceId](xref:titleid.playfabapi.com.client.accountmanagement.unlinknintendoswitchdeviceid)
    * server.[GetPlayFabIDsFromNintendoSwitchDeviceIds](xref:titleid.playfabapi.com.client.accountmanagement.getplayfabidsfromnintendoswitchdeviceids)
    * client.[LoginWithFacebookInstantGamesId](xref:titleid.playfabapi.com.client.authentication.loginwithfacebookinstantgamesid) (not ready to use yet)
    * client.[UnlinkFacebookInstantGamesId](xref:titleid.playfabapi.com.client.accountmanagement.unlinkfacebookinstantgamesid) (not ready to use yet)
    * server.[GetPlayFabIDsFromFacebookInstantGamesIds](xref:titleid.playfabapi.com.client.accountmanagement.getplayfabidsfromfacebookinstantgamesids) (not ready to use yet).
* **New PlayStream Events**
  * `title_hopper_config_updated` event renamed to [title\_queue\_config\_updated](/services/playfab/api-references/events/Matchmaking/title-queue-config-updated)
* **General changes**
  * Deprecated the parameter `ServerAddress` in many models in favor of the new `ServerIPV4Address`.

### Unreal (multiple SDKs) Specific Changes

* Minor updates to both SDKs/plugins leading to a final merge to the Marketplace plugin. (Coming soon!)

### PythonSDK! specific changes

* [PythonSDK!](https://github.com/PlayFab/PythonSdk)
  * Bug fixes and improvements.

### UnitySDK and CSharpSDK specific changes

* [UnitySDK](https://github.com/PlayFab/UnitySDK) and [CSharpSDK](https://github.com/PlayFab/CSharpSDK)
  * Added a new structure called Plugin Manager. For now, this is just a foundation for future changes. We marked some old function signatures as obsolete, and you should update them. (No breaking changes though).
  * Found and resolved multiple issues with HTTPS.Put, which makes Entity Files more accessible on more platforms.
  * Bug fixes in the ScreenTime feature.

## 180716

Date: July 16, 2018

### UnitySDK changes

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * Fixed minor issues with ScreenTime under some rare circumstances.

### CSharpSDK changes

* [CSharpSDK](https://github.com/PlayFab/CSharpSDK)
  * Added [Plugin Manager API](https://github.com/PlayFab/CSharpSDK/blob/master/PluginManager.md) to C# SDK, to support optional custom implementations of JSON Serializer and HTTP client.
  * **~~UnrealCppSdk Changes:~~** (UPDATED : This SDK is deprecated. For the new unreal SDK, see [UnrealMarketplaceSDK](https://www.unrealengine.com/marketplace/playfab-SDK))
  * Unreal 4 C++ SDK is also published on [Unreal Marketplace!](https://www.unrealengine.com/marketplace/playfab-SDK)

## 180710

Date: July 10, 2018

### Unity hotfix release

* Further refinements and optimizations to the ScreenTime events.

## 180709

Date: July 9, 2018

### Hotfix release

* Fixing some minor issues with last week's deployments.
* Everything in last week's release notes should now work as promised.

## 180706

Date: July 6, 2018

### API changes

* **New API Method:**
  * entity.[WriteEvents](xref:titleid.playfabapi.com.events.playstreamevents.writeevents)

### UnitySdDK specific changes

* [UnitySdDK](https://github.com/PlayFab/UnitySDK)
  * Screen time tracking, described in the previous release is no longer Beta-only.

## 180705

Date: July 5, 2018

### API changes

* EntityAPI.[ExecuteEntityCloudScript](xref:titleid.playfabapi.com.cloudscript.server-sidecloudscript.executeentitycloudscript)
* `PlayStreamEventModel.title_hopper_config_updated`

### New PythonSDK! changes

* [PythonSDK!](https://github.com/PlayFab/PythonSdk)
  * tested with 2.7

### UnitySDK changes

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * Wrapped some utilities in a namespace to avoid 3rd party conflicts.
  * Editor Extensions should misbehave less, and display fewer warnings.
  * New Feature - read our [Sessions](/services/playfab/data-analytics/ingest-data/sessions) tutorial.

### JavaScriptSDK changes

* [JavaScriptSDK](https://github.com/PlayFab/JavaScriptSDK)
  * `customData` relay parameter should now work for Login functions.

### XPlatCppSDK specific changes

* [XPlatCppSDK](https://github.com/PlayFab/XPlatCppSdk)
  * Large results are now parsed correctly.

## 180618

Date: June 18, 2018

### API changes

* Added new error codes in various API methods.
* Multiple entity-related PlayStream events now describe their [EntityLineage](/services/playfab/api-references/events/data-types/entitylineage).

## 180528

Date: May 28, 2018

### API changes

* **New API Methods:**
  * Admin.[GetPlayedTitleList](xref:titleid.playfabapi.com.admin.accountmanagement.getplayedtitlelist)
  * Admin.[DeleteMasterPlayerAccount](xref:titleid.playfabapi.com.admin.accountmanagement.deletemasterplayeraccount)
  * Admin.[ExportMasterPlayerData](xref:titleid.playfabapi.com.admin.accountmanagement.exportmasterplayerdata)
  * This is a part of the new GDPR launch. See our blog [here](https://blog.playfab.com/blog/gdpr)
* Updated Error codes in various API methods
* New PlayStream Event:
  * [player\_data\_exported](/services/playfab/api-references/events/PlayerIdentity/player-data-exported)

## 180514

Date: May 14, 2018

### XPlatCppSDK specific changes

* [XPlatCppSDK](https://github.com/PlayFab/XPlatCppSdk)
  * Fixes in JSON serialization.

## 180507

Date: May 7, 2018

### API changes

* **New API Method:**
  * entity.[GetProfiles](xref:titleid.playfabapi.com.profiles.accountmanagement.getprofiles)
* **New PlayStream Events:**
  * [entity\_executed\_cloud\_script](/services/playfab/api-references/events/CloudScript/entity-executed-cloud-script)
* **Updated API Method:**
  * client.[RegisterPlayFabUser](xref:titleid.playfabapi.com.client.authentication.registerplayfabuser) now returns [result](xref:titleid.playfabapi.com.client.authentication.registerplayfabuser#registerplayfabuserresult).[EntityToken](xref:titleid.playfabapi.com.client.authentication.registerplayfabuser#entitytokenresponse)

### UnitySDK specific changes

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * Improved `HttpWebRequest` certificate validation security.
  * No longer default to ignoring all certificates.
  * Customers are expected to implement their own certificate validation, or call `PlayFab.Internal.PlayFabWebRequest.SkipCertificateValidation()`.

### WindowsSdk specific changes

* Fixed hundreds of Level 4 warnings.
* Corrected the version number published in `PlayFabSettings.cpp`.
* Most previous versions have all had the wrong version number embedded in-code, and in call headers.

### Created XPlatCppSDK

* [XPlatCppSDK](https://github.com/PlayFab/XPlatCppSDK)
  * Currently in beta.
  * Built using Windows SDK as a template.
  * May become a replacement to Windows SDK (At least several months away).
  * Upgrade should require almost no breaking changes.
  * Some `cpprestsdk` strings should be converted to `std::string`.
  * Converted some `web::json::value` types to `json::value`.
  * timestamps aren't fully tested in Linux.
  * NuGet package
  * Uses lighter weight dependencies
  * Specifically `jsoncpp` and curl, rather than `cpprestsdk`.
  * Uses `std::string` everywhere, rather than a mix of two string types.
  * Adds Linux Support.

## 180414

Date: April 14, 2018

**~~UnrealCppSdk HotFix:~~** (UPDATED : This SDK is deprecated. For the new unreal SDK, see [UnrealMarketplaceSDK](https://www.unrealengine.com/marketplace/playfab-SDK))

* ~~Issues were discovered in the Entity API release for UnrealCppSdk. These are hot fixed, and the Entity API should now work as expected.~~

## 180409

Date: April 9, 2018

### API changes

* **HotFix:**
  * Only the date was updated, not the major/minor version numbers.
* **Guilds:**
  * client.[GetAccountInfo](xref:titleid.playfabapi.com.client.accountmanagement.getaccountinfo).[UserAccountInfo](xref:titleid.playfabapi.com.client.accountmanagement.getaccountinfo#useraccountinfo).[UserTitleInfo](xref:titleid.playfabapi.com.client.accountmanagement.getaccountinfo#usertitleinfo).[TitlePlayerAccount](xref:titleid.playfabapi.com.client.accountmanagement.getaccountinfo#entitykey) now contains the required information to identify other players and add them to your guild/group.
  * The same information can also be found with [admin.GetUserAccountInfo](xref:titleid.playfabapi.com.admin.accountmanagement.getuseraccountinfo) and [server.GetUserAccountInfo](xref:titleid.playfabapi.com.server.accountmanagement.getuseraccountinfo).

### [UnitySDK](https://github.com/PlayFab/UnitySDK) specific changes

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * Performance improvement for default HTTP settings (UnityWWW), for long-running processes.

## 180403

Date: April 3, 2018

### Unreal SDKs updated to support v4.17 through 4.19

* Removing support for UE 4.14 through 4.16 (Update!)

## 180329

Date: March 29, 2018

### Unreal SDKs updated to support Entity APIs

* Sorry for the delay!
* This release still targets UE 4.17, and not 4.18 or 4.19. We're in-progress working on updating versions.

## 180316

Date: March 16, 2018

### API changes

* Entities! [Blog](https://api.playfab.com/blog/introducing-entities-objects-and-files)! [Quickstart Guide](/services/playfab/live-service-management/game-configuration/entities/quickstart)!
* All Client login methods return Entity credentials if `request.LoginTitlePlayerAccountEntity` is set to `true`.
* Guilds! [Blog](https://api.playfab.com/blog/announcing-groups-for-guilds-friends-clans-and-more)! [Guide](/services/playfab/community/associations/groups/quickstart)!
* Error Codes for many API methods updated for accuracy (Dozens!).

### New API methods

* [admin.RevokeInventoryItems](xref:titleid.playfabapi.com.admin.playeritemmanagement.revokeinventoryitems) and [server.RevokeInventoryItems](xref:titleid.playfabapi.com.server.playeritemmanagement.revokeinventoryitems).
* A whole new [Entity API](/services/playfab/live-service-management/game-configuration/entities/quickstart).
* Many new [Entity PlayStream Events](/services/playfab/api-references/events) (search for "entity" on linked page).

### Most SDKs updated to support Entity APIs

* **Full Support:**
  * [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * [JavaScriptSDK](https://github.com/PlayFab/JavaScriptSDK)
  * [ActionScriptSDK](https://github.com/PlayFab/ActionScriptSDK)
  * [CSharpSDK](https://github.com/PlayFab/CSharpSDK)
  * [NodeSDK](https://github.com/PlayFab/NodeSDK)
  * [PostmanCollection](https://github.com/PlayFab/PostmanCollection)
  * WindowsSDK
  * [Cocos2d-xSDK](https://github.com/PlayFab/Cocos2d-xSDK)
  * [JavaSDK](https://github.com/PlayFab/JavaSDK)
  * [LuaSdk](https://github.com/PlayFab/LuaSDK) (Including Corona and Defold)
  * [PhpSdk](https://github.com/PlayFab/PhpSdk)
  * CloudScript
* **Will Support Soon:** Unreal Bp and Cpp. (Sorry - delayed due to technical difficulties!)

## 180213

Date: February 13, 2018

### API changes

* `SendAccountRecoveryEmail` now supports custom account recovery email templates when a custom account recovery email template ID is passed in with the request parameters.
* All Client Login Mechanisms can now optionally return Entity API credentials. (This is part of a coming-soon feature.)

### UnitySDK specific changes

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * We're dropping support for older Unity versions, see our [blog post](https://blog.playfab.com/blog/unity-version-support).
  * Build files are now published using Unity version 2017.3.0f3.

## 180131

Date: January 31, 2018

### JavaSDK changes

* [JavaSDK](https://github.com/PlayFab/JavaSDK)
  * Java is now published to Maven.

## 180129

Date: January 29, 2018

### UnitySDK specific changes

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * Fixing issues with compression.
  * It should be safe to re-enable compression for all versions and all platforms.

## 180123

Date: January 23, 2018

### UnitySDK hotfix

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * PlayFab UnitySDK had an issue with Unity version 2017.1.
  * See the [forum post](https://community.playfab.com/questions/16734/error-cs1061-no-definition-for-sendwebrequesterror.html) for details.
  * We resolved this. PlayFab UnitySDK should work for all versions again.

## 180122

Date: January 22, 2018

### API documentation update

* Error codes updated on many API methods.

### CSharpSDK and UnitySDK specific changes

* [CSharpSDK](https://github.com/PlayFab/CSharpSDK) and UnitySDK
  * Adding a PlayFabException class, so that it's easier to catch PlayFab specific exceptions.

### NodeSDK specific changes

* [NodeSDK](https://github.com/PlayFab/NodeSDK)
  * SDK Breaking Change: Require syntax for NodeSDK NPM package changed.
  * Major upgrade focused on NPM package.
  * Formerly require statements didn't follow the NPM convention, requiring multiple nonstandard require statements.
  * Now it requires a single require statement, and follows NPM conventions.
  * Major version number changed, this release is now 2.0.
  * 1.x to 2.x [Upgrade Guide](https://github.com/PlayFab/NodeSDK/blob/master/upgrade.md).

### CloudScript example

* Added TypeScript definitions for the API Error exceptions.

## 180103

Date: January 3, 2018

### LuaSDK specific updates

* [LuaSDK](https://github.com/PlayFab/LuaSDK)/Defold/Corona
  * Bug fix update.
  * Some platforms were producing a malformed URL that couldn't be resolved.

## 180102

Date: January 2, 2018

### UnitySDK specific updates

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * Bug fix update.
  * To avoid an issue with response headers, compression should be disabled for all device builds. This update makes that possible.
  * Alternately, switching to Web Request will also avoid the issue.
  * Added a new HTTP option for Unity versions > 2017.


## Related topics

- [PlayFab Release Notes 2015](/services/playfab/release-notes/2015.md)
- [PlayFab Release Notes 2020](/services/playfab/release-notes/2020.md)
- [PlayFab Release Notes 2021](/services/playfab/release-notes/2021.md)
- [PlayFab Release Notes 2022](/services/playfab/release-notes/2022.md)
- [PlayFab Release Notes 2019](/services/playfab/release-notes/2019.md)
