Skip to content

Version 1.3.0

Latest

Choose a tag to compare

@Thundermaker300 Thundermaker300 released this 23 May 22:42
· 160 commits to main since this release

Version 1.3.0

LOTS OF ADDITIONS!!!!! (and some important changes)

Additions

  • Added API for Roblox's new community forums!! This is a huge work in progress, and probably not useful for now as not many groups have the feature enabled. Looking forward to see how this API can be used for moderation bots and the sort in the future! Start using the API with the new Community.GetForumAsync() method. Note that this will throw an exception if the community does not yet have forums, so this largely isn't useful unless your community is apart of the beta (like the MovieWorld group). Keep your eyes out for Roblox's official release of them!
  • Most classes that have a Created property now have an IsNew property, which will be true if the asset that the class represents is less than 3 days old.
  • Add four new options to Experience.ModifyAsync (all booleans)
    • ExperienceModifyOptions.EditableAPIEnabled - Enable editable mesh/images API
    • ExperienceModifyOptions.UseLocalizationTables - Use cloud localization tables
    • ExperienceModifyOptions.LocalizationAutomaticEntries - Automatically add entries over time based on user playtime
    • ExperienceModifyOptions.LocalizationAutomaticDeletions - Automatically delete stale entries over time
  • Add Asset.ModifyCollaboratorAsync() methods to add and remove collaborators from an asset. Collaborators = users that can use or edit an asset that is not owned by them.
  • Add Asset.RemoveFromInventoryAsync to remove item from authenticated user's inventory.
  • Add DeveloperStats.ActivePrivateServers and DeveloperStats.ActivePrivateServerSubscriptions.
  • Add DeveloperStats.GetDataStoreMetricsAsync(). Has some basic data store usage data for an experience.
  • Add Experience.AddTranslatorAsync and Experience.RemoveTranslatorAsync methods to add and remove user translators, and Experience.AddCommunityTranslatorAsync and Experience.RemoveCommunityTranslatorAsync methods to add and remove group translators.
  • Add Experience.ClearAutoCapturedLocalizationEntriesAsync(string) method to clear automatically captured localization table entries.
  • Add Experience.GetSourceLocaleAsync().
  • Add Experience.IsEligibleForImmersiveAdsAsync() to determine if an experience can show immersive ads.
  • Add new API for modifying an experience's paid access state: Experience.SetPaidAccessToFreeAsync(), Experience.SetPaidAccessToRobuxAsync(int), and Experience.SetPaidAccessToLocalCurrencyAsync(FiatPurchase).
  • Add HttpManager.ForceXCSRFRetry to force a second attempt to retrieve an X-CSRF token for a failed request even if the http response isn't forbidden.
  • Add User.IsAdministrator, User.IsNew (less than 3 days old), User.IsVeteran.

!! Breaking Changes !!

  • A PageResponse's NextPageCursor and PreviousPageCursor will no longer be an empty string "". Instead, they will now always be null if there isn't a next or previous page.

Now Obsolete

  • User.GetRobloxBadgesAsync() -> replaced with User.RobloxBadges (data is now retrieved when the User object is instantiated).
  • ExperienceModifyOptions.PurchaseRequired and ExperienceModifyOptions.Cost. To modify an experience's paid access state, please use one of the following new methods: Experience.SetPaidAccessToFreeAsync(), Experience.SetPaidAccessToRobuxAsync(int), and Experience.SetPaidAccessToLocalCurrencyAsync(FiatPurchase).

Non-Breaking Changes

  • Most classes now have an overridden ToString method and will now display more information when logged.

Fixes

  • Fix certain API members duplicating HTTP responses (or straight up not sending them) due to a bug in the HttpManager.SendStringAsync method.
  • Fix StudioAccessToAPIsAllowed being set to false when using Experience.ModifyAsync if it wasn't explicitly set to true.
  • Updated the endpoint used for User.GetFavoritesAsync as the old endpoint is going to become non-functional soon.