Global

Methods

# acceptFriendRequest(userId) → {Promise.<void>}

🔐 Accept a user's friend request.

Parameters:
Name Type Description
userId number

The id of the user.

View Source lib/friends/acceptFriendRequest.js, line 22

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.acceptFriendRequest(123456)

# acceptTrade(tradeId) → {Promise.<void>}

🔐 Accept an active trade.

Parameters:
Name Type Description
tradeId number

The tradeId to accept.

View Source lib/trades/acceptTrade.js, line 22

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.acceptTrade(1234)

# addDeveloperProduct(universeId, name, priceInRobux, descriptionopt) → {Promise.<DeveloperProductAddResult>}

🔐 Create a developer product.

Parameters:
Name Type Attributes Description
universeId number

The id of the universe.

name string

The name of the developer product.

priceInRobux number

The price of the product.

description string <optional>

The description of the developer product.

View Source lib/games/addDeveloperProduct.js, line 22

Promise.<DeveloperProductAddResult>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.addDeveloperProduct(1, "A Developer Product", 100, "A cool item.")

# addUsersToConversation(conversationId, userIds) → {Promise.<ConversationAddResponse>}

🔐 Add users to a conversation.

Parameters:
Name Type Description
conversationId number

The id of the conversation.

userIds Array.<number>

The userIds of the users to add.

View Source lib/chat/addUsersToConversation.js, line 20

Promise.<ConversationAddResponse>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.addUsersToConversation(1, [1, 2, 3])

# avatarRules(optionopt) → {Promise.<AvatarRules>}

✅ Get the avatar rules.

Parameters:
Name Type Attributes Description
option string <optional>

A specific rule to filter for.

View Source lib/avatar/avatarRules.js, line 16

Promise.<AvatarRules>
Example
const noblox = require("noblox.js")
const avatarRules = await noblox.avatarRules()

# block(userId) → {Promise.<void>}

🔐 Block a user.

Parameters:
Name Type Description
userId number

The id of the user that is being blocked.

View Source lib/accountsettings/block.js, line 22

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.block(123456)

# buy(asset, priceopt) → {Promise.<BuyAssetResponse>}

🔐 Buy an asset from the marketplace.

Parameters:
Name Type Attributes Description
asset number

The ID of the product.

price number <optional>

The price of the product.

View Source lib/economy/buy.js, line 23

Promise.<BuyAssetResponse>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.buy(1117747196)

# canManage(userId, assetId) → {Promise.<boolean>}

✅ Returns whether the user can manage a given asset.

Parameters:
Name Type Description
userId number

The id of the user.

assetId number

The id of the asset.

View Source lib/develop/canManage.js, line 20

Promise.<boolean>
Example
const noblox = require("noblox.js")
let canManage = await noblox.canManage(123456, 234567)

# canTradeWith(userId) → {Promise.<CanTradeResponse>}

🔐 Check if the signed in user can trade with another user.

Parameters:
Name Type Description
userId number

The id of the user.

View Source lib/trades/canTradeWith.js, line 21

Promise.<CanTradeResponse>
Example
const noblox = require("noblox.js")
// Login using your cookie
const canTrade = await noblox.canTradeWith(1234)

# changeRank(groupId, target, change) → {Promise.<ChangeRankResult>}

🔐 Change a user's rank.

Parameters:
Name Type Description
groupId number

The id of the group.

target number

The userId of the target.

change number

The change in rank (1 = one rank higher, -1 = one rank lower)

View Source lib/groups/changeRank.js, line 25

Promise.<ChangeRankResult>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.changeRank(1, 2, -1)

# chatSettings() → {Promise.<ChatSettings>}

🔐 Get the chat settings.

View Source lib/chat/chatSettings.js, line 16

Promise.<ChatSettings>
Example
const noblox = require("noblox.js")
// Login using your cookie
const settings = await noblox.chatSettings()

# clearSession(jar) → {Promise.<string>}

🔐 Remove .ROBLOSECURITY cookie from jar.

Parameters:
Name Type Description
jar CookieJar

The CookieJar containing the .ROBLOSECURITY cookie.

View Source lib/util/clearSession.js, line 19

Promise.<string>
Example
const noblox = require("noblox.js")
noblox.clearSession()

# configureGamePass(gamePassId, name, descriptionopt, price, iconopt) → {Promise.<GamePassResponse>}

🔐 Modifies an existing game pass.

Parameters:
Name Type Attributes Description
gamePassId number

The id of the game pass.

name string

The name of the game pass; skips name, description, and icon if set to "".

description string <optional>

The description of the game pass; description is updated when name is modified.

price number | boolean

The price of the game pass in Robux; sets to 'Off Sale' if 0, false, or a negative value; skips if true.

icon ReadStream <optional>

The read stream for the game pass icon being uploaded; .png, .jpg, .gif

View Source lib/games/configureGamePass.js, line 27

Promise.<GamePassResponse>
Example
const noblox = require("noblox.js")
const fs = require("fs")
// Login using your cookie
noblox.configureGamePass(12345678, "Game Pass Title", "Game Pass Description", 1234, fs.createReadStream("./Image.png"))

# configureItem(assetId, name, description, enableCommentsopt, sellForRobuxopt, genreSelectionopt) → {Promise.<ConfigureItemResponse>}

🔐 Configure an asset.

Parameters:
Name Type Attributes Default Description
assetId number

The id of the asset.

name string

The new name of the asset.

description string

The new description of the asset.

enableComments boolean <optional>

Enable comments on your asset.

sellForRobux number | boolean <optional>
false

The amount of robux to sell for; use a number for sellable assets, boolean for copyable assets

genreSelection string <optional>
"All"

The genre of your asset.

View Source lib/develop/configureItem.js, line 27

Promise.<ConfigureItemResponse>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.configureItem(1117747196, "Item", "A cool item.", false, 100)

# counterTrade(tradeId, targetUserId, sendingOffer, recievingOffer) → {Promise.<SendTradeResponse>}

🔐 Counter an active incoming trade.

Parameters:
Name Type Description
tradeId number

The id of the active trade

targetUserId number

The user to send the trade to.

sendingOffer TradeOffer

The offer to send to the other user.

recievingOffer TradeOffer

The offer you are requesting from the other user.

View Source lib/trades/counterTrade.js, line 26

Promise.<SendTradeResponse>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.counterTrade(1234, 80231025, { userAssetIds: [23289506393] }, { userAssetIds: [32924150919] })

# currentlyWearing(userId) → {Promise.<AssetIdList>}

✅ Get the assets a given user is wearing.

Parameters:
Name Type Description
userId number

The user's userId.

View Source lib/avatar/currentlyWearing.js, line 16

Promise.<AssetIdList>
Example
const noblox = require("noblox.js")
const wearingAssets = await noblox.currentlyWearing(1)

# declineAllFriendRequests() → {Promise.<void>}

🔐 Decline all incoming friend requests.

View Source lib/friends/declineAllFriendRequests.js, line 21

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.declineAllFriendRequests()

# declineFriendRequest(userId) → {Promise.<void>}

🔐 Decline a user's friend request.

Parameters:
Name Type Description
userId number

The id of the user that sent the friend request that is being declined.

View Source lib/friends/declineFriendRequest.js, line 22

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.declineFriendRequest(123456)

# declineTrade(tradeId) → {Promise.<void>}

🔐 Decline an active trade.

Parameters:
Name Type Description
tradeId number

The tradeId to decline.

View Source lib/trades/declineTrade.js, line 22

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.declineTrade(1234)

# deleteDatastoreEntry(universeId, datastoreName, entryKey, scopeopt) → {Promise.<void>}

☁️ Marks the entry as deleted by creating a tombstone version. Entries are deleted permanently after 30 days.

API Key Permissions:
  • Delete entry
Parameters:
Name Type Attributes Default Description
universeId number

The ID of the universe

datastoreName string

Name of the data store

entryKey string

The key which identifies the entry.

scope string <optional>
global

Defaults to global, similar to Lua API.

View Source lib/datastores/deleteDatastoreEntry.js, line 26

Promise.<void>
Example
const noblox = require("noblox.js")
await noblox.deleteDatastoreEntry({ universeId: 127407415, datastoreName: 'LevelStore', entryKey: 'Level_User' })

# deleteFromInventory(assetId) → {Promise.<void>}

🔐 Removes an asset from the authenticated user's inventory; throws an error if the item is not owned.

Parameters:
Name Type Description
assetId number

The id of the asset.

View Source lib/asset/deleteFromInventory.js, line 22

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
await noblox.deleteFromInventory(144075659)

# deleteWallPost(group, postId) → {Promise.<void>}

🔐 Delete a wall post.

Parameters:
Name Type Description
group number

The id of the group.

postId number

The id of the post to delete.

View Source lib/groups/deleteWallPost.js, line 23

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.deleteWallPost(1, 2)

# deleteWallPostsByUser(group, userId) → {Promise.<void>}

🔐 Removes all wall posts sent by the provided user.

Parameters:
Name Type Description
group number

The id of the group.

userId number

The userId of the user having their posts removed.

View Source lib/groups/deleteWallPostsByUser.js, line 22

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.deleteWallPostsByUser(1, 2)

# demote(group, target) → {Promise.<ChangeRankResult>}

🔐 Demote a user.

Parameters:
Name Type Description
group number

The id of the group.

target number

The userId of the user being demoted.

View Source lib/groups/demote.js, line 22

Promise.<ChangeRankResult>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.demote(1, 2)

# exile(group, target) → {Promise.<void>}

🔐 Exile a user from a group.

Parameters:
Name Type Description
group number

The id of the group.

target number

The userId of the user being exiled.

View Source lib/groups/exile.js, line 22

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.exile(1, 2)

# generalRequest(url, events, ignoreCacheopt, getBodyopt, jaropt) → {Promise.<Object>}

🔐 Get the verification inputs and send a request.

Parameters:
Name Type Attributes Default Description
url string

The url to post to.

events object

Form data to send with the request.

ignoreCache boolean <optional>
false

Whether to ignore the cache or not.

getBody boolean <optional>
false

Whether to return the original body before the POST request.

jar CookieJar <optional>

The CookieJar containing the .ROBLOSECURITY cookie.

View Source lib/util/generalRequest.js, line 26

Promise.<Object>
Example
const noblox = require("noblox.js")
// Login using your cookie.
noblox.generalRequest("//www.roblox.com/Groups/Group.aspx?gid=1", { __EVENTTARGET: 'JoinGroupDiv', __EVENTARGUMENT: 'Click' })

# getAction(row) → {AuditItem}

✅ Get the action row for the audit log text. Supported: change rank, delete post, change group status.

Parameters:
Name Type Description
row string

The audit log action row.

Deprecated:
  • Yes

View Source lib/util/getAction.js, line 23

AuditItem

# getAuditLog(group, actionTypeopt, userIdopt, sortOrderopt, limitopt, cursoropt) → {Promise.<AuditPage>}

🔐 Get the audit log for the group.

Parameters:
Name Type Attributes Description
group number

The id of the group.

actionType "DeletePost" | "RemoveMember" | "AcceptJoinRequest" | "DeclineJoinRequest" | "PostStatus" | "ChangeRank" | "BuyAd" | "SendAllyRequest" | "CreateEnemy" | "AcceptAllyRequest" | "DeclineAllyRequest" | "DeleteAlly" | "DeleteEnemy" | "AddGroupPlace" | "RemoveGroupPlace" | "CreateItems" | "ConfigureItems" | "SpendGroupFunds" | "ChangeOwner" | "Delete" | "AdjustCurrencyAmounts" | "Abandon" | "Claim" | "Rename" | "ChangeDescription" | "InviteToClan" | "KickFromClan" | "CancelClanInvite" | "BuyClan" | "CreateGroupAsset" | "UpdateGroupAsset" | "ConfigureGroupAsset" | "RevertGroupAsset" | "CreateGroupDeveloperProduct" | "ConfigureGroupGame" | "Lock" | "Unlock" | "CreateGamePass" | "CreateBadge" | "ConfigureBadge" | "SavePlace" | "PublishPlace" <optional>

The action type to filter for.

userId number <optional>

The user's id to filter for.

sortOrder SortOrder <optional>

The order to sort the logs by.

limit Limit <optional>

The maximum logs per a page.

cursor string <optional>

The cursor for the page.

View Source lib/groups/getAuditLog.js, line 24

Promise.<AuditPage>
Example
const noblox = require("noblox.js")
// Login using your cookie
const rankLogs = await noblox.getAuditLog(1, "ChangeRank", 2, "Asc")

# getAuthenticatedUser() → {AuthenticatedUserData}

🔐 Get the current authenticated user.

View Source lib/util/getAuthenticatedUser.js, line 19

Example
const noblox = require("noblox.js")
// Login using your cookie.
const user = await noblox.getAuthenticatedUser()

# getAvatar(userId) → {Promise.<AvatarInfo>}

✅ Get a user's avatar.

Parameters:
Name Type Description
userId number

The user's userId.

View Source lib/avatar/getAvatar.js, line 16

Promise.<AvatarInfo>
Example
const noblox = require("noblox.js")
const avatar = await noblox.getAvatar(1)

# getAwardedTimestamps(userId, badgeId) → {Promise.<UserBadgeStats>}

✅ Get the time the badge was awarded to a user.

Parameters:
Name Type Description
userId number

The userId of the user.

badgeId Array.<number>

The ids of the badges.

View Source lib/badges/getAwardedTimestamps.js, line 20

Promise.<UserBadgeStats>
Example
const noblox = require("noblox.js")
const badges = await noblox.getAwardedTimestamps(1, [1, 2, 3])

# async getBadgeInfo(badgeId) → {Promise.<BadgeInfo>}

✅ Get the info of a badge.

Parameters:
Name Type Description
badgeId number

The badge's id.

View Source lib/badges/getBadgeInfo.js, line 19

Promise.<BadgeInfo>
Example
const noblox = require("noblox.js")
const badgeInfo = await noblox.getBadgeInfo(1)

# getBlurb(userId) → {Promise.<string>}

✅ Get a user's blurb - a user's description.

Parameters:
Name Type Description
userId number

The id of the user's blurb that is being retrieved.

Deprecated:
  • Obsolete function, will be deleted in future version. Use getPlayerInfo instead.

View Source lib/users/getBlurb.js, line 20

Promise.<string>
Example
const noblox = require("noblox.js")
let blurb = await noblox.getBlurb({ userId: 123456 })

# getChatMessages(conversationId, pageSizeopt, exclusiveStartMessageIdopt) → {Promise.<Array.<ChatMessage>>}

🔐 Get the chat messages for a conversation.

Parameters:
Name Type Attributes Default Description
conversationId number

The id of the conversation.

pageSize number <optional>
100

The size of the page.

exclusiveStartMessageId string <optional>

The messageId to start at.

View Source lib/chat/getChatMessages.js, line 20

Promise.<Array.<ChatMessage>>
Example
const noblox = require("noblox.js")
// Login using your cookie
const messages = await noblox.getChatMessages(1, 25)

# getCollectibles(userId, sortOrderopt, assetTypeopt, limitopt) → {Promise.<Array.<CollectibleEntry>>}

🔓 Get a user's collectibles.

Parameters:
Name Type Attributes Default Description
userId number

The id of the user whose collectibles are being retrieved.

sortOrder SortOrder <optional>
Asc

The order that the collectibles will bee sorted by (Asc or Desc)

assetType string <optional>

The asset type for the collectibles you're trying to get.

limit number <optional>
10

The amount of results per request.

View Source lib/inventory/getCollectibles.js, line 23

Promise.<Array.<CollectibleEntry>>
Example
const noblox = require("noblox.js")
let collectibles = await noblox.getCollectibles({userId: 123456, sortOrder: "Asc", limit: 100})

# getConversations(conversationIds) → {Promise.<Array.<ChatConversation>>}

🔐 Get conversation details for the conversationIds specified in the parameters

Parameters:
Name Type Description
conversationIds Array.<number>

An array with the ids of the conversations.

View Source lib/chat/getConversations.js, line 18

Promise.<Array.<ChatConversation>>
Example
const noblox = require("noblox.js")
// Login using your cookie
const conversations = await noblox.getConversations([1, 2, 3])

# getCurrentAvatar(optionopt) → {Promise.<AvatarInfo>}

🔐 Gets your current avatar.

Parameters:
Name Type Attributes Description
option number <optional>

The name of a parameter on the avatar.

View Source lib/avatar/getCurrentAvatar.js, line 17

Promise.<AvatarInfo>
Example
const noblox = require("noblox.js")
// Login using your cookie
const avatar = await noblox.getCurrentAvatar()

# getCurrentUser(optionopt) → {LoggedInUserData}

🔐 Get the current logged in user.

Parameters:
Name Type Attributes Description
option string <optional>

A specific option to return.

Deprecated:
  • getCurrentUser() is deprecated; see getAuthenticatedUser(), getPremium(), getThumbnails(), getUserFunds() instead | August 27, 2024 - https://devforum.roblox.com/t/official-list-of-deprecated-web-endpoints/62889/66 // Login using your cookie. const user = await noblox.getCurrentUser()

View Source lib/util/getCurrentUser.js, line 22

Example
const noblox = require("noblox.js")

# getDatastoreEntry(universeId, datastoreName, entryKey, scopeopt, versionIdopt) → {Promise.<DatastoreEntry>}

☁️ Returns the latest value and metadata associated with an entry, or a specific version if versionId is provided.

API Key Permissions:
  • Read entries
  • Read version
Parameters:
Name Type Attributes Default Description
universeId number

The ID of the universe

datastoreName string

Name of the data store

entryKey string

The key which identifies the entry.

scope string <optional>
global

Defaults to global, similar to Lua API.

versionId string <optional>

The version to inspect

View Source lib/datastores/getDatastoreEntry.js, line 28

Promise.<DatastoreEntry>
Example
const noblox = require("noblox.js")
const entry = await noblox.getDatastoreEntry({ universeId: 127407415, datastoreName: 'LevelStore', entryKey: 'Level_User' })

# getDatastoreEntryVersions(universeId, datastoreName, entryKey, scopeopt, startTimeopt, endTimeopt, sortOrderopt, limitopt, cursoropt) → {Promise.<EntryVersionsResult>}

☁️ Returns a list of entry versions of an entry.

API Key Permissions:
  • List versions
Parameters:
Name Type Attributes Default Description
universeId number

The ID of the universe

datastoreName string

Name of the data store

entryKey string

The key which identifies the entry.

scope string | boolean <optional>
global

Defaults to global, similar to Lua API.

startTime Date <optional>

Don't consider versions older than this

endTime Date <optional>

Don't consider versions younger than this

sortOrder "Ascending" | "Descending" <optional>
Ascending

Older first (Ascending) or younger first (Descending)

limit number <optional>

Maximum number of items to return

cursor string <optional>

Provide to request the next set of data

View Source lib/datastores/getDatastoreEntryVersions.js, line 31

Promise.<EntryVersionsResult>
Example
const noblox = require("noblox.js")
const versions = await noblox.getDatastoreEntryVersions({ universeId: 127407415, datastoreName: 'LevelStore', entryKey: 'Level_User' })

# getDatastoreKeys(universeId, datastoreName, scopeopt, prefixopt, limitopt, cursoropt) → {Promise.<DatastoreKeysResult>}

☁️ Returns a list of entry keys within a data store.

API Key Permissions:
  • List keys
Parameters:
Name Type Attributes Default Description
universeId number

The ID of the universe

datastoreName string

Name of the data store

scope string | boolean <optional>
global

Defaults to global, similar to Lua API. If set to true, returns keys from all scopes.

prefix string <optional>

Return only data stores with this prefix

limit number <optional>

Maximum number of items to return

cursor string <optional>

Provide to request the next set of data

View Source lib/datastores/getDatastoreKeys.js, line 28

Promise.<DatastoreKeysResult>
Example
const noblox = require("noblox.js")
const keys = await noblox.getDatastoreKeys({ universeId: 127407415, datastoreName: 'LevelStore' })

# getDatastores(universeId, prefixopt, limitopt, cursoropt) → {Promise.<DatastoresResult>}

☁️ Returns a list of data stores belonging to a universe.

API Key Permissions:
  • List DataStores
Parameters:
Name Type Attributes Description
universeId number

The ID of the universe whose data stores are being retrieved.

prefix string <optional>

Return only data stores with this prefix

limit number <optional>

Maximum number of items to return

cursor string <optional>

Provide to request the next set of data

View Source lib/datastores/getDatastores.js, line 26

Promise.<DatastoresResult>
Example
const noblox = require("noblox.js")
const datastores = await noblox.getDatastores(1117747196)

# getDeveloperProducts(placeId, pageopt) → {Promise.<DeveloperProductsResult>}

🔐 Returns the existing developer products in a specified game.

Parameters:
Name Type Attributes Default Description
placeId number

The ID of the place whose developer products you want to retrieve

page number <optional>
1

Which page of developer products to return (pageSize is 50)

View Source lib/games/getDeveloperProducts.js, line 18

Promise.<DeveloperProductsResult>

# getFollowerCount(userId)

✅ Gets the number of followers a user has.

Parameters:
Name Type Description
userId number

View Source lib/friends/getFollowerCount.js, line 19

Promise

Example
const noblox = require("noblox.js")
const numberOfFollowers = await noblox.getFollowerCount(55549140)

# getFollowers(userId, limitopt, sortOrderopt, cursoropt) → {Promise.<FollowersPage>}

✅ Get a user's followers.

Parameters:
Name Type Attributes Default Description
userId number

The id of the user whose followers are being returned.

limit Limit <optional>
10

The amount of followers being fetched each request.

sortOrder SortOrder <optional>
Asc

The order that the data should be sorted by (Asc or Desc)

cursor string <optional>

The cursor for the previous or next page.

View Source lib/friends/getFollowers.js, line 23

Promise.<FollowersPage>
Example
const noblox = require("noblox.js")
let followers = await noblox.getFollowers(123456, "Asc", 10)

# getFollowingCount(userId)

✅ Gets the number of users a user is following.

Parameters:
Name Type Description
userId number

View Source lib/friends/getFollowingCount.js, line 19

Promise

Example
const noblox = require("noblox.js")
const numberOfFollowings = await noblox.getFollowingCount(55549140)

# getFollowings(userId, limitopt, sortOrderopt, cursoropt) → {Promise.<FollowingsPage>}

✅ Get the users followed by the user.

Parameters:
Name Type Attributes Default Description
userId number

The id of the user.

limit Limit <optional>
10

The amount of users fetched by each request (10, 25, 50, 100)

sortOrder SortOrder <optional>
Asc

The order that the returned data will be sorted by (Asc or Desc)

cursor string <optional>

The previous or next page's cursor.

View Source lib/friends/getFollowings.js, line 23

Promise.<FollowingsPage>
Example
const noblox = require("noblox.js")
let following = await noblox.getFollowings(123456, "Asc", 50)

# getFriendCount(userId)

✅ Gets the number of friends a user has.

Parameters:
Name Type Description
userId number

View Source lib/friends/getFriendCount.js, line 19

Promise

Example
const noblox = require("noblox.js")
const numberOfFriends = await noblox.getFriendCount(55549140)

# getFriendRequests(sortOrderopt, limitopt, cursoropt) → {Promise.<FriendRequestsPage>}

🔐 Get the friend requests of the authenticated user.

Parameters:
Name Type Attributes Default Description
sortOrder SortOrder <optional>
Asc

The order of the returned data (Asc or Desc)

limit Limit <optional>
10

The number of users returned by each request.

cursor string <optional>

The previous or next page's cursor.

View Source lib/friends/getFriendRequests.js, line 23

Promise.<FriendRequestsPage>
Example
const noblox = require("noblox.js")
// Login using your cookie
let friendRequests = await noblox.getFriendRequests({sortOrder: "Desc", limit: 100})

# getFriends(userId) → {Promise.<Friends>}

✅ Get the friends of a user

Parameters:
Name Type Description
userId number

The id of the user whose friends are being returned.

View Source lib/friends/getFriends.js, line 19

Promise.<Friends>
Example
const noblox = require("noblox.js")
let friends = await noblox.getFriends(123456)

# async getGameBadges(universeId, limitopt, cursoropt, sortOrderopt) → {Promise.<BadgeInfo>}

✅ Get the badges in a specific game.

Parameters:
Name Type Attributes Description
universeId number

The id of the universe.

limit Limit <optional>

The max number of badges to return.

cursor string <optional>

The page cursor.

sortOrder SortOrder <optional>

The order to sort badges in. (Asc/Desc)

View Source lib/badges/getGameBadges.js, line 23

Promise.<BadgeInfo>
Example
const noblox = require("noblox.js")
const badges = await noblox.getGameBadges(1)

# getGameInstances(placeId, serverTypeopt, sortOrderopt, limitopt) → {Promise.<Array.<GameInstance>>}

🔓 Get the servers in a game.

Parameters:
Name Type Attributes Default Description
placeId number

The id of the place.

serverType "Public" | "Friend" | "VIP" <optional>
Public

The type of server to get

sortOrder SortOrder <optional>
Asc

The order that the servers will be sorted by (Asc or Desc)

limit number <optional>

The maximum number of results.

View Source lib/games/getGameInstances.js, line 24

Promise.<Array.<GameInstance>>
Example
const noblox = require("noblox.js")
// Login using your cookie
const servers = await noblox.getGameInstances(1)

# getGamePassProductInfo(gamePassId) → {Promise.<GamePassProductInfo>}

✅ Get the info of an gamepass.

Parameters:
Name Type Description
gamePassId number

The id of the asset.

View Source lib/asset/getGamePassProductInfo.js, line 19

Promise.<GamePassProductInfo>
Example
const noblox = require("noblox.js")
const gamePassInfo = await noblox.getGamePassProductInfo(2919875)

# async getGamePasses(universeId, limitopt) → {Promise.<Array.<GamePassData>>}

✅ Gets a game's game passes.

Parameters:
Name Type Attributes Description
universeId number

The id of the universe.

limit Limit <optional>

The max number of game passes to return.

View Source lib/games/getGamePasses.js, line 21

Promise.<Array.<GamePassData>>
Example
const noblox = require("noblox.js")
const gamePasses = await noblox.getGamePasses(1686885941)

# getGameRevenue(placeId, type, granularity) → {Promise.<GameRevenueResponse>}

🔐 Get the Game Revenue data.

Parameters:
Name Type Description
placeId number

The id of the game.

type "Revenue" | "RevenuePerVisit" | "AverageVisitLength" | "Visits"

The type of revenue. Options: Revenue, RevenuePerVisit, AverageVisitLength, Visits

granularity "Hourly" | "Daily" | "Monthly"

The type of revenue. Options: Hourly, Daily, Monthly

View Source lib/games/getGameRevenue.js, line 19

Promise.<GameRevenueResponse>
Example
const noblox = require("noblox.js")
const gameRevenue = await noblox.getGameRevenue(936068308, "Revenue", "Hourly");

🔐 Get the social link data associated with a game.

Parameters:
Name Type Description
universeId number

The universe id of the game.

See:

View Source lib/games/getGameSocialLinks.js, line 21

Promise.<Array.<SocialLinkResponse>>
Example
const noblox = require("noblox.js")
const gameSocialLinks = await noblox.getGameSocialLinks(2615802125)

# getGeneralToken(jaropt) → {Promise.<string>}

🔐 Generate an X-CSRF-Token.

Parameters:
Name Type Attributes Description
jar CookieJar <optional>

The jar containing the .ROBLOSECURITY token.

View Source lib/util/getGeneralToken.js, line 23

Promise.<string>
Example
const noblox = require("noblox.js")
// Login using your cookie.
const XCSRF = await noblox.getGeneralToken()

# getGroup(groupId) → {Promise.<Group>}

✅ Get a group's info.

Parameters:
Name Type Description
groupId number

The id of the group.

View Source lib/groups/getGroup.js, line 20

Promise.<Group>
Example
const noblox = require("noblox.js")
const groupInfo = await noblox.getGroup(1)

# getGroupAssets(groupId, assetType, sortOrderopt, limitopt) → {Promise.<Array.<GroupAssetInfo>>}

🔐 Get assets for a group.

Parameters:
Name Type Attributes Default Description
groupId number

The id of the group.

assetType String

The type of asset being retrieved: ("Shirt", "Pants").

sortOrder SortOrder <optional>
Asc

The order results are sorted in.

limit Limit <optional>

The maximum number of assets to return

View Source lib/itemconfiguration/getGroupAssets.js, line 24

Promise.<Array.<GroupAssetInfo>>
Example
const noblox = require("noblox.js")
// Login using your cookie
const groupModels = await noblox.getGroupAssets({groupId: 1, assetType: 'Model', sortOrder: 'Asc', limit: '100'})

# getGroupFunds(group) → {Promise.<number>}

🔓 Gets the amount of robux in a group.

Parameters:
Name Type Description
group number

The id of the group

View Source lib/economy/getGroupFunds.js, line 21

Promise.<number>
Example
const noblox = require("noblox.js")
// Login using your cookie (optional if group funds are public)
let robux = await noblox.getGroupFunds(9997719)

# getGroupGames(groupId, accessFilteropt, sortOrderopt, limitopt) → {Promise.<Array.<GroupGameInfo>>}

✅ Get a group's games.

Parameters:
Name Type Attributes Default Description
groupId number

The id of the group.

accessFilter "All" | "Public" | "Private" <optional>
All

Filtering games via access level.

sortOrder SortOrder <optional>
Asc

The order results are sorted in.

limit Limit <optional>

The maximum number of games to return

View Source lib/games/getGroupGames.js, line 23

Promise.<Array.<GroupGameInfo>>
Example
const noblox = require("noblox.js")
const groupGames = await noblox.getGroupGames({groupId: 1, accessFilter: 'All', sortOrder: 'Asc', limit: '100'})

# getGroupRevenueSummary(groupId, timeFrameopt) → {Promise.<RevenueSummaryResponse>}

🔐 Gets recent Robux revenue summary for a group; shows pending Robux. | Requires "Spend group funds" permissions.

Parameters:
Name Type Attributes Default Description
groupId number

The group id to get Robux summary for.

timeFrame "Day" | "Week" | "Month" | "Year" <optional>
"Month"

The time frame to get for.

View Source lib/economy/getGroupRevenueSummary.js, line 22

Promise.<RevenueSummaryResponse>
Example
const noblox = require("noblox.js")
// Login using your cookie
let revenueSummary = await noblox.getGroupRevenueSummary(9997719, "Year")

🔐 Get the social link data associated with a group.

Parameters:
Name Type Description
groupId number

The id of the group.

View Source lib/groups/getGroupSocialLinks.js, line 20

Promise.<Array.<SocialLinkResponse>>
Example
const noblox = require("noblox.js")
const groupSocialLinks = await noblox.getGroupSocialLinks(9997719)

# getGroupTransactions(group, transactionTypeopt, limit, sortOrderopt) → {Promise.<Array.<TransactionItem>>}

🔐 Get a group's transactions.

Parameters:
Name Type Attributes Default Description
group number

The id of the group.

transactionType "Sale" | "Purchase" | "AffiliateSale" | "DevEx" | "GroupPayout" | "AdImpressionPayout" <optional>
Sale

The transaction type.

limit number

The number of transactions being fetched in total.

sortOrder SortOrder <optional>
Asc

The cursor for the next page.

View Source lib/economy/getGroupTransactions.js, line 22

Promise.<Array.<TransactionItem>>
Example
const noblox = require("noblox.js")
// Login using your cookie
const transactions = await noblox.getGroupTransactions(1, "Sale")

# getGroups(userId) → {Promise.<Array.<IGroupPartial>>}

✅ Get the groups of a user.

Parameters:
Name Type Description
userId number

The id of the user.

View Source lib/groups/getGroups.js, line 20

Promise.<Array.<IGroupPartial>>
Example
const noblox = require("noblox.js")
let groups = await noblox.getGroups(123456)

# getHash(jar) → {string}

🔐 Get a unique hash for the given jar. Used to cache items that depend on session.

Parameters:
Name Type Description
jar CookieJar

The audit log action row.

View Source lib/util/getHash.js, line 23

string
Example
const noblox = require("noblox.js")
// Login using your cookie.
const hash = noblox.getHash()

# getIdFromUsername(usernames) → {Promise.<number>|Promise.<Array.<number>>}

✅ Get a user's id from their username.

Parameters:
Name Type Description
usernames string | Array.<string>

The username or usernames of the account(s) whose id(s) is being fetched.

View Source lib/users/getIdFromUsername.js, line 20

Promise.<number> | Promise.<Array.<number>>
Example
const noblox = require("noblox.js")
let ids = await noblox.getIdFromUsername(["ROBLOX", "Qxest", "builderman"])

# getInputs(html, findopt) → {Inputs}

✅ Get verification inputs on a page.

Parameters:
Name Type Attributes Description
html string

The html to get the inputs from.

find Array.<string> <optional>

The inputs to find on the page

View Source lib/util/getInputs.js, line 21

Inputs
Example
const noblox = require("noblox.js")
const inputs = noblox.getInputs("htmlhere")

# getInventory(userId, assetTypes, sortOrderopt, limitopt) → {Promise.<Array.<InventoryEntry>>}

🔓 Get a user's inventory. NOTE: Badges must use getPlayerBadges() due to an issue with Roblox's API.

Parameters:
Name Type Attributes Default Description
userId number

The id of user whose inventory is being returned.

assetTypes Array.<string>

The types of assets being retrieved: ("Shirt", "Pants").

sortOrder SortOrder <optional>
Asc

The order that the data will be returned in (Asc or Desc)

limit Limit <optional>
10

The number of assets returned in each request (10, 25, 50, or 100)

View Source lib/inventory/getInventory.js, line 24

Promise.<Array.<InventoryEntry>>
Example
const noblox = require("noblox.js")
let inventory = await noblox.getInventory({userId: 123456, assetTypes: ["Shirt"], sortOrder: "Asc", limit: 100})

# getInventoryById(userId, assetTypeId, sortOrderopt, limitopt) → {Promise.<Array.<InventoryEntry>>}

🔓 Get a user's inventory.

Parameters:
Name Type Attributes Default Description
userId number

The id of user whose inventory is being returned.

assetTypeId Array.<number>

The types of assets being retrieved: (11, 12).

sortOrder SortOrder <optional>
Asc

The order that the data will be returned in (Asc or Desc)

limit Limit <optional>
10

The number of assets returned in each request (10, 25, 50, or 100)

View Source lib/inventory/getInventoryById.js, line 23

Promise.<Array.<InventoryEntry>>
Example
const noblox = require("noblox.js")
let inventory = await noblox.getInventoryById({userId: 123456, assetTypeId: 2, sortOrder: "Asc", limit: 100})

# getJoinRequest(group, userId) → {Promise.<GroupJoinRequest>|Promise.<null>}

🔐 Gets a specific join request, given a user ID.

Parameters:
Name Type Description
group number

The id of the group.

userId number

The user ID whose join request is wanted.

View Source lib/groups/getJoinRequest.js, line 22

A join request if one exists, or null.

Promise.<GroupJoinRequest> | Promise.<null>
Example
const noblox = require("noblox.js")
// Login using your cookie
const request = await noblox.getJoinRequest(4591072, 5903228)

# getJoinRequests(group, sortOrderopt, limitopt, cursoropt) → {Promise.<GroupJoinRequestsPage>}

🔐 Get the join requests for a group.

Parameters:
Name Type Attributes Description
group number

The id of the group.

sortOrder SortOrder <optional>

The order to sort the requests by.

limit Limit <optional>

The maximum results per a page.

cursor string <optional>

The cursor for the next page.

View Source lib/groups/getJoinRequests.js, line 24

Promise.<GroupJoinRequestsPage>
Example
const noblox = require("noblox.js")
// Login using your cookie
const requests = await noblox.getJoinRequests(1, "Asc")

✅ Get the group's logo.

Parameters:
Name Type Attributes Default Description
group number

The id of the group.

size GroupIconSize <optional>
150x150

The size of the logo.

circular boolean <optional>
false

Get the circular version of the logo.

format GroupIconFormat <optional>
Png

The file format of the logo.

View Source lib/thumbnails/getLogo.js, line 23

Promise.<string>
Example
const noblox = require("noblox.js")
const logo = await noblox.getLogo(1)

# getMessages(pageNumberopt, pageSizeopt, messageTabopt) → {Promise.<PrivateMessagesPage>}

🔐 Get the messages of the authenticated user.

Parameters:
Name Type Attributes Default Description
pageNumber number <optional>
0

The number of the current page.

pageSize number <optional>
25

The size of the current page.

messageTab "Inbox" | "Sent" | "Archive" <optional>
Inbox

The tab of the messages being fetched (Inbox, Sent, Archive)

View Source lib/privatemessages/getMessages.js, line 22

Promise.<PrivateMessagesPage>
Example
const noblox = require("noblox.js")
// Login using your cookie
let messages = await noblox.getMessages(1, 10, "Inbox"))

# getOwnership(userId, itemTargetId, itemTypeopt) → {Promise.<boolean>}

✅ Check if the user owns the asset.

Parameters:
Name Type Attributes Default Description
userId number

The id of the user whose ownership is being checked.

itemTargetId number

The id of the item.

itemType "Asset" | "GamePass" | "Badge" | "Bundle" <optional>
Asset

The type of item in question (Asset, GamePass, Badge, Bundle)

View Source lib/inventory/getOwnership.js, line 22

Promise.<boolean>
Example
const noblox = require("noblox.js")
let ownership = await noblox.getOwnership(123456, 234567, "GamePass")

# getPageResults(url, query, sortOrderopt, limitopt, pageCursoropt) → {Promise.<Array>}

✅ Handle pagination returned by Roblox.

Parameters:
Name Type Attributes Description
url string

The url to retrieve the page results from.

query string

Any query parameters to add to the url.

sortOrder SortOrder <optional>

The order to sort the results by.

limit Limit <optional>

The maximum number of results to return. Following 'pages' of results will be requested until this limit of results is reached.

pageCursor string <optional>

Current page index

View Source lib/util/getPageResults.js, line 25

Promise.<Array>
Example
const noblox = require("noblox.js")
const inventory = await noblox.getPageResults("//inventory.roblox.com/v2/users/1/inventory", "Shirt", "Asc", 100)

# getPlaceInfo(universeId) → {Promise.<Array.<PlaceInformation>>}

🔓 Get the info for a universe.

Parameters:
Name Type Description
universeId number | Array.<number>

The id(s) of the place(s).

View Source lib/games/getPlaceInfo.js, line 19

Promise.<Array.<PlaceInformation>>
Example
const noblox = require("noblox.js")
const universeInfo = await noblox.getPlaceInfo([ 10905034443 ])

# getPlayerBadges(userId, limitopt, sortOrderopt) → {Promise.<Array.<PlayerBadges>>}

✅ Get the badges that a user has.

Parameters:
Name Type Attributes Default Description
userId number

The id of the user whose badges are being fetched.

limit number <optional>
10

The amount of badges being returned each request.

sortOrder SortOrder <optional>
Asc

The order that the data will be returned in (Asc or Desc)

View Source lib/badges/getPlayerBadges.js, line 21

Promise.<Array.<PlayerBadges>>
Example
const noblox = require("noblox.js")
let badges = noblox.getPlayerBadges(123456, 10, "Asc")

# getPlayerInfo(userId) → {Promise.<PlayerInfo>}

✅ Get a user's information.

Parameters:
Name Type Description
userId number

The id of the user.

View Source lib/users/getPlayerInfo.js, line 23

Promise.<PlayerInfo>
Example
const noblox = require("noblox.js")
let information = await noblox.getPlayerInfo({userId: 123456})

# getPlayerThumbnail(userIds, sizeopt, formatopt, isCircularopt, cropTypeopt) → {Promise.<Array.<PlayerThumbnailData>>}

✅ Get a user's thumbnail.

Parameters:
Name Type Attributes Default Description
userIds number | Array.<number>

The id or an array ids of thumbnails to be retrieved; 100

size number | string <optional>
720x720

The size of the image to be returned; defaults highest resolution

format 'png' | 'jpeg' <optional>
png

The file format of the returned thumbnails

isCircular boolean <optional>
false

Return the circular version of the thumbnails

cropType 'Body' | 'Bust' | 'Headshot' <optional>
Body

The style of thumbnail that will be returned

View Source lib/thumbnails/getPlayerThumbnail.js, line 43

Promise.<Array.<PlayerThumbnailData>>
Example
const noblox = require("noblox.js")
let thumbnail_default = await noblox.getPlayerThumbnail(2416399685)
let thumbnail_circHeadshot = await noblox.getPlayerThumbnail(2416399685, 420, "png", true, "Headshot")
let thumbnails_body = await noblox.getPlayerThumbnail([2416399685, 234567, 345678], "150x200", "jpeg", false, "Body")

# getPlayers(group, rolesetId, sortOrderopt, limitopt, cursoropt) → {Promise.<Array.<GroupUser>>}

✅ Get the players in a group for a specific role.

Parameters:
Name Type Attributes Description
group number

The id of the group.

rolesetId number | Array.<number>

The roleset's id.

sortOrder SortOrder <optional>

The order to get the players in.

limit Limit <optional>

The maximum result per a page.

cursor string <optional>

The cursor for the next page.

View Source lib/groups/getPlayers.js, line 24

Promise.<Array.<GroupUser>>
Example
const noblox = require("noblox.js")
const players = await noblox.getPlayers(1, 1117747196)

# getPremium(userId) → {Promise.<boolean>}

🔐 Gets whether or not a user has premium.

Parameters:
Name Type Description
userId number

The id of the user.

View Source lib/premiumfeatures/getPremium.js, line 21

Promise.<boolean>
Example
const noblox = require("noblox.js")
// Login using your cookie
const hasPremium = await noblox.getPremium(123456)

# getPresences(userIds) → {Promise.<Presences>}

🔐 Get the presence status of users.

Parameters:
Name Type Description
userIds Array.<number>

An array of userIds.

View Source lib/presence/getPresences.js, line 22

Promise.<Presences>
Example
const noblox = require("noblox.js")
// Login using your cookie
const presences = await noblox.getPresences([1, 2, 3])

# getProductInfo(assetId) → {Promise.<ProductInfo>}

✅ Get the info of an asset.

Parameters:
Name Type Description
assetId number

The id of the asset.

View Source lib/asset/getProductInfo.js, line 19

Promise.<ProductInfo>
Example
const noblox = require("noblox.js")
const productInfo = await noblox.getProductInfo(1117747196)

# getRankInGroup(group, userId) → {Promise.<number>}

✅ Get the user's rank in the group.

Parameters:
Name Type Description
group number

The id of the group.

userId number

The id of the user.

View Source lib/groups/getRankInGroup.js, line 21

Promise.<number>
Example
const noblox = require("noblox.js")
const rankId = await noblox.getRankInGroup(1, 1)

# getRankNameInGroup(group, userId) → {Promise.<string>}

✅ Get a user's rank name in a group.

Parameters:
Name Type Description
group number

The id of the group.

userId number

The id of the user.

View Source lib/groups/getRankNameInGroup.js, line 21

Promise.<string>
Example
const noblox = require("noblox.js")
const rankName = await noblox.getRankNameInGroup(1, 1)

# getRecentItems(listTypeopt) → {Promise.<AssetRecentItemsResult>}

🔐 Get assets you've recently worn.

Parameters:
Name Type Attributes Description
listType number <optional>

A type of item. Ex: Shirt, All

View Source lib/avatar/getRecentItems.js, line 17

Promise.<AssetRecentItemsResult>
Example
const noblox = require("noblox.js")
// Login using your cookie
const recentlyWorn = await noblox.getRecentItems("All")

# async getResaleData(assetId) → {Promise.<ResaleDataResponse>}

✅ Get the recent sale history (price and volume per day for 180 days) of a limited asset.

Parameters:
Name Type Description
assetId number

The id of the asset.

View Source lib/economy/getResaleData.js, line 20

Promise.<ResaleDataResponse>
Example
const noblox = require("noblox.js")
const resaleData = await noblox.getResaleData(20573078)

# async getResellers(assetId, limitopt) → {Promise.<Array.<ResellerData>>}

🔐 Gets available resale copies of a limited asset.

Parameters:
Name Type Attributes Description
assetId number

The id of the asset.

limit Limit <optional>

The max number of resellers to return.

View Source lib/economy/getResellers.js, line 22

Promise.<Array.<ResellerData>>
Example
const noblox = require("noblox.js")
// Login using your cookie
const resellers = await noblox.getResellers(20573078)

# getRole(group, roleQuery) → {Promise.<Role>}

✅ Get a role in a group.

Parameters:
Name Type Description
group number | Array.<number>

The ID of the group or an array of roles to query.

roleQuery number | string

The rank of a role, the name of the role, or roleset ID.

View Source lib/groups/getRole.js, line 24

Promise.<Role>
Example
const noblox = require("noblox.js")
const customerRole = await noblox.getRole(1, "Customer")

# getRolePermissions(group, rolesetId) → {Promise.<RolePermissions>}

🔐 Get the permissions for a role.

Parameters:
Name Type Description
group number

The id of the group.

rolesetId number

The rolesetId of the role.

View Source lib/groups/getRolePermissions.js, line 20

Promise.<RolePermissions>
Example
const noblox = require("noblox.js")
// Login using your cookie
const rolePermissions = await noblox.getRolePermissions(1, 1117747196)

# getRoles(group) → {Promise.<Array.<Role>>}

✅ Get the roles in a group.

Parameters:
Name Type Description
group number

The id of the group.

View Source lib/groups/getRoles.js, line 20

Promise.<Array.<Role>>
Example
const noblox = require("noblox.js")
const roles = await noblox.getRoles(1)

# getRolloutSettings(featureNamesopt) → {Promise.<GetRolloutSettingsResult>}

🔐 Get the rollout settings.

Parameters:
Name Type Attributes Description
featureNames Array.<string> <optional>

The names of the features rolling out.

View Source lib/chat/getRolloutSettings.js, line 17

Promise.<GetRolloutSettingsResult>
Example
const noblox = require("noblox.js")
// Login using your cookie
const settings = await noblox.getRolloutSettings(['LuaChat', 'Party'])

# getSenderUserId(jaropt) → {Promise.<number>}

🔐 Get the userId of the current user and cache it.

Parameters:
Name Type Attributes Description
jar CookieJar <optional>

The CookieJar containing the .ROBLOSECURITY cookie.

View Source lib/util/getSenderUserId.js, line 22

Promise.<number>
Example
const noblox = require("noblox.js")
// Login using your cookie.
const userId = await noblox.getSenderUserId()

# getSession(jaropt) → {string}

🔐 Get the .ROBLOSECURITY cookie from the jar.

Parameters:
Name Type Attributes Description
jar CookieJar <optional>

The cookie jar containing the .ROBLOSECURITY cookie.

View Source lib/util/getSession.js, line 21

string
Example
const noblox = require("noblox.js")
// Login using your cookie.
const cookie = await noblox.getSession()

# getShout(group) → {Promise.<GroupShout>}

🔓 Get the group's shout.

Parameters:
Name Type Description
group number

The id of the group.

View Source lib/groups/getShout.js, line 20

Promise.<GroupShout>
Example
const noblox = require("noblox.js")
const groupShout = await noblox.getShout(1)

# getThumbnails(thumbnailRequests) → {Promise.<Array.<ThumbnailData>>}

✅ Get thumbnails for assets/players.

Parameters:
Name Type Description
thumbnailRequests Array.<ThumbnailRequest>

The id or an array ids of thumbnails to be retrieved; 100

View Source lib/thumbnails/getThumbnails.js, line 34

Promise.<Array.<ThumbnailData>>
Example
const noblox = require("noblox.js")
const playerThumbnails = noblox.getThumbnails([
 {
   type: "AvatarHeadShot",
   token: "270FF19ECB1AFCF25383A6F37C6AD307",
   format: "png",
   size: "150x150"
  }, {
   type: "AvatarBust",
   targetId: 55549140,
   isCircular: true,
   format: "png",
   size: "150x150"
  }
])

# getTradeInfo(tradeId) → {Promise.<TradeInfo>}

🔐 Get detailed information for a specific trade.

Parameters:
Name Type Description
tradeId number

The id of the trade.

View Source lib/trades/getTradeInfo.js, line 21

Promise.<TradeInfo>
Example
const noblox = require("noblox.js")
// Login using your cookie
const tradeInfo = await noblox.getTradeInfo(1234)

# getTrades(tradeStatusType, sortOrderopt, limitopt) → {Promise.<Array.<TradeAsset>>}

🔐 Get the trades for a specific category.

Parameters:
Name Type Attributes Default Description
tradeStatusType string

The status of the trades to get [Inbound, Outbound, Complete, Inactive].

sortOrder SortOrder <optional>
Asc

The order that the data will be returned in (Asc or Desc)

limit Limit <optional>
10

The number of assets returned in each request (10, 25, 50, or 100)

View Source lib/trades/getTrades.js, line 23

Promise.<Array.<TradeAsset>>
Example
const noblox = require("noblox.js")
// Login using your cookie
const trades = await noblox.getTrades("Inbound")

# getUAIDs(userId, assetIds, exclusionListopt) → {Promise.<UAIDResponse>}

✅ Get a UserAssetID for a specific asset.

Parameters:
Name Type Attributes Description
userId number

The id of the user to search.

assetIds Array.<number>

The ids of the assets to retrieve.

exclusionList Array.<number> <optional>

The UAIDs to exclude from the search.

View Source lib/inventory/getUAIDs.js, line 22

Promise.<UAIDResponse>
Example
const noblox = require("noblox.js")
const UAIDInfo = await noblox.getUAIDs(80231025, [1974901902, 4255053867, 2705893733, 1532395])

# getUniverseInfo(universeId) → {Promise.<Array.<UniverseInformation>>}

🔓 Get the info for a universe.

Parameters:
Name Type Description
universeId number | Array.<number>

The id(s) of the universe(s).

View Source lib/games/getUniverseInfo.js, line 17

Promise.<Array.<UniverseInformation>>
Example
const noblox = require("noblox.js")
const universeInfo = await noblox.getUniverseInfo([ 2152417643 ])

# getUnreadConversationCount() → {Promise.<GetUnreadConversationCountResult>}

🔐 Get the number of unread conversations.

View Source lib/chat/getUnreadConversationCount.js, line 16

Example
const noblox = require("noblox.js")
// Login using your cookie
const unreadConversationCount = noblox.getUnreadConversationCount()

# getUnreadMessages(conversationIds, pageSize) → {Promise.<Array.<ChatConversationWithMessages>>}

🔐 Returns unread messages in the given conversations

Parameters:
Name Type Description
conversationIds Array.<number>

The IDs of the conversations you want unread messages from.

pageSize number

Number of messages to return on each page.

View Source lib/chat/getUnreadMessages.js, line 19

Promise.<Array.<ChatConversationWithMessages>>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.getUnreadMessages([8212952828])

# getUserConversations(pageNumberopt, pageSizeopt) → {Promise.<Array.<ChatConversation>>}

🔐 Get your conversations.

Parameters:
Name Type Attributes Description
pageNumber number <optional>

The page index.

pageSize number <optional>

The size of each page.

View Source lib/chat/getUserConversations.js, line 18

Promise.<Array.<ChatConversation>>
Example
const noblox = require("noblox.js")
// Login using your cookie
const conversations = await noblox.getUserConversations()

# getUserFunds(userId) → {Promise.<number>}

🔓 Gets the amount of robux for the authenticated user.

Parameters:
Name Type Description
userId number

Must match the userId of the authenticated user

View Source lib/economy/getUserFunds.js, line 22

Promise.<number>
Example
const noblox = require("noblox.js")
// Login using your cookie
const currentUser = await noblox.setCookie(process.env.ROBLOXCOOKIE)
const robux = await noblox.getUserFunds(currentUser.id)

# getUserInfo(userId) → {Promise.<UserInfo>}

✅ Get base-level user profile information

Parameters:
Name Type Description
userId number

View Source lib/users/getUserInfo.js, line 17

Promise.<UserInfo>

🔐 Get the social link data (promotion channels) associated with a user.

Parameters:
Name Type Description
userId number

The id of the user.

View Source lib/accountinformation/getUserSocialLinks.js, line 20

Promise.<PromotionChannelsResponse>
Example
const noblox = require("noblox.js")
const userSocialLinks = await noblox.getUserSocialLinks(2416399685)

# getUserTransactions(transactionTypeopt, limit, sortOrderopt) → {Promise.<Array.<TransactionItem>>}

🔐 Get a user's transactions.

Parameters:
Name Type Attributes Default Description
transactionType "Sale" | "Purchase" | "AffiliateSale" | "DevEx" | "GroupPayout" | "AdImpressionPayout" <optional>
Sale

The type of transactions being fetched.

limit number

The number of transactions being fetched in total.

sortOrder SortOrder <optional>
Asc

The cursor for the next page.

View Source lib/economy/getUserTransactions.js, line 21

Promise.<Array.<TransactionItem>>
Example
const noblox = require("noblox.js")
// Login using your cookie
let transactions = await noblox.getUserTransactions("Sale", 10)

# getUsernameFromId(id) → {Promise.<string>}

✅ Get a user's username from their user id.

Parameters:
Name Type Description
id number

The id of the user.

View Source lib/users/getUsernameFromId.js, line 20

Promise.<string>
Example
const noblox = require("noblox.js")
let username = await noblox.getUsernameFromId(123456)

# getUsernameHistory(userId, limitopt, sortOrderopt, cursor) → {Promise.<Array.<UsernameHistoryEntry>>}

✅ Get a user's username history.

Parameters:
Name Type Attributes Default Description
userId number
limit Limit <optional>
10
sortOrder SortOrder <optional>
Asc
cursor string

View Source lib/users/getUsernameHistory.js, line 23

Promise.<Array.<UsernameHistoryEntry>>
Example
const noblox = require("noblox.js")
const history = await noblox.getUsernameHistory({ userId: 1, limit: 10, sortOrder: "Asc", cursor: "somecursorstring" })

# getVerification(url, ignoreCacheopt, getBodyopt, jaropt) → {Promise.<GetVerificationResponse>}

🔐 Get the RequestVerificationToken from a url.

Parameters:
Name Type Attributes Default Description
url string

The url to get the token from.

ignoreCache boolean <optional>
false

Determines whether the cache be ignored or not.

getBody boolean <optional>
false

If the body and inputs should be returned in an object

jar CookieJar <optional>

The CookieJar containing the .ROBLOSECURITY cookie.

View Source lib/util/getVerification.js, line 28

Promise.<GetVerificationResponse>
Example
const noblox = require("noblox.js")
// Login using your cookie.
const verificationTokenInfo = await noblox.getVerification()

# getVerificationInputs(html) → {Inputs}

✅ Get the verification inputs from the html.

Parameters:
Name Type Description
html string | function

| selector - The html to search or the cheerio selector to use.

View Source lib/util/getVerificationInputs.js, line 19

Inputs
Example
const noblox = require("noblox.js")
const inputs = noblox.getVerificationInputs("htmlstuff")

# getWall(group, sortOrderopt, limitopt, cursoropt) → {Promise.<WallPostPage>}

🔓 Get the posts on the group wall.

Parameters:
Name Type Attributes Description
group number

The id of the group.

sortOrder SortOrder <optional>

The order to get the players in.

limit Limit <optional>

The maximum result per a page.

cursor string <optional>

The cursor for the next page.

View Source lib/groups/getWall.js, line 21

Promise.<WallPostPage>
Example
const noblox = require("noblox.js")
// Login using your cookie
const wallPosts = await noblox.getWall(1)

# groupPayout(group, member, amount, recurringopt, usePercentageopt) → {Promise.<void>}

🔐 Pay group funds out to a user.

Parameters:
Name Type Attributes Default Description
group number

The id of the group.

member number | Array.<number>

The member or array of members to payout.

amount number

The amount of Robux for each recipient to receive.

recurring boolean <optional>
false

If the payment is recurring.

usePercentage boolean <optional>
false

If the amount is a percentage.

View Source lib/groups/groupPayout.js, line 26

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.groupPayout(1117747196, 55549140, 30)

# handleJoinRequest(group, userId, accept) → {Promise.<void>}

🔐 Accept/decline a user's join request.

Parameters:
Name Type Description
group number

The id of the group.

userId number

The id of the user.

accept boolean

If the user should be accepted into the group.

View Source lib/groups/handleJoinRequest.js, line 23

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.handleJoinRequest(1, 1, true)

# http(url, options, ignoreLoginError) → {Promise.<string>}

✅ Send an http request to url with options.

Parameters:
Name Type Description
url string

The url to request to.

options object

The options to send with the request.

ignoreLoginError boolean

If any login errors should be ignored.

View Source lib/util/http.js, line 39

Promise.<string>
Example
const noblox = require("noblox.js")
const body = await noblox.http("https://roblox.com/login", { method: "GET" })

# incrementDatastoreEntry(universeId, datastoreName, entryKey, incrementBy, scopeopt, robloxEntryUserIDsopt, robloxEntryAttributesopt) → {Promise.<DatastoreEntry>}

☁️ Increments the value for an entry by a given amount, or create a new entry with that amount.

API Key Permissions:
  • Create entry
  • Update entry
Parameters:
Name Type Attributes Default Description
universeId number

The ID of the universe

datastoreName string

Name of the data store

entryKey string

The key which identifies the entry.

incrementBy number

The amount by which the entry should be incremented, or the starting value if it does not exist

scope string <optional>
global

Defaults to global, similar to Lua API.

robloxEntryUserIDs Array.<number> <optional>

Comma-separated list of Roblox user IDs the entry is tagged with. If not provided, existing user IDs are cleared.

robloxEntryAttributes object <optional>

If not provided, existing attributes are cleared.

View Source lib/datastores/incrementDatastoreEntry.js, line 31

Promise.<DatastoreEntry>
Example
const noblox = require("noblox.js")
const entry = await noblox.incrementDatastoreEntry({ universeId: 127407415, datastoreName: 'LevelStore', entryKey: 'Level_User', incrementBy: 2 })

# jar(sessionOnlyopt) → {CookieJar}

✅ Create a jar file based on sessionOnly.

Parameters:
Name Type Attributes Description
sessionOnly boolean <optional>

The session to use to create the jar file.

View Source lib/util/jar.js, line 20

CookieJar
Example
const noblox = require("noblox.js")
const jar = noblox.jar()

# leaveGroup(group) → {Promise.<void>}

🔐 Leave a group.

Parameters:
Name Type Description
group number

The id of the group.

View Source lib/groups/leaveGroup.js, line 23

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.leaveGroup(1)

# markChatAsRead(conversationId, endMessageId) → {Promise.<void>}

🔐 Mark a chat as read.

Parameters:
Name Type Description
conversationId number

The id of the conversation.

endMessageId string

The last message to read.

View Source lib/chat/markChatAsRead.js, line 20

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.markChatAsRead(8212952828, 'e775e103-876f-4332-84ab-1ea14f326d39')

# markChatAsSeen(conversationIds) → {Promise.<void>}

🔐 Mark chats as seen.

Parameters:
Name Type Description
conversationIds Array.<number>

An array with conversationIds.

View Source lib/chat/markChatAsSeen.js, line 19

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.markChatAsSeen([1, 2, 3])

# message(recipient, subject, body, replyMessageIdopt, includePreviousMessageopt) → {Promise.<void>}

🔐 Send a message. NOTE: Roblox blocks web servers and proxies from sending messages.

Parameters:
Name Type Attributes Default Description
recipient number

The id of the user.

subject string

The subject of the message.

body string

The body of the message.

replyMessageId number <optional>

The messageId to reply to.

includePreviousMessage boolean <optional>
false

The previous or next page cursor.

View Source lib/privatemessages/message.js, line 29

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.message(1, "A subject", "A body", 1234, true)

# multiGetLatestMessages(conversationIds) → {Promise.<Array.<ChatConversationWithMessages>>}

🔐 Get multiple of the latest messages.

Parameters:
Name Type Description
conversationIds Array.<number>

An array with the conversationIds.

View Source lib/chat/multiGetLatestMessages.js, line 18

Promise.<Array.<ChatConversationWithMessages>>
Example
const noblox = require("noblox.js")
// Login using your cookie
const recentMessages = await noblox.multiGetLatestMessages([1, 2, 3])

# onAuditLog(group)

🔐 An event for when an audit log event is added.

Parameters:
Name Type Description
group number

The id of the group.

View Source lib/groups/onAuditLog.js, line 29

An EventEmitter that emits when an action is added to the audit log.

Example
const noblox = require("noblox.js")
// Login using your cookie
const auditEvent = noblox.onAuditLog(1)
auditEvent.on("data", function(data) {
 console.log("New action!", data)
})
auditEvent.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onBlurbChange(userId)

✅ An event for when a user's blurb changes.

Parameters:
Name Type Description
userId number

The id of the user.

View Source lib/users/onBlurbChange.js, line 27

An EventEmitter that emits when a user's blurb changes.

Example
const noblox = require("noblox.js")
const blurbEvent = noblox.onBlurbChange(1)
blurbEvent.on("data", function(data) {
 console.log("User's blurb changed!", data)
})
blurbEvent.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onFriendRequest()

🔐 An event for when a user sends you a friend request.

View Source lib/friends/onFriendRequest.js, line 30

An EventEmitter that emits when a user sends you a friend request.

Example
const noblox = require("noblox.js")
// Login using your cookie

const friendRequestEvent = noblox.onFriendRequest()
friendRequestEvent.on("data", function(data) {
 console.log("New friend request! ", data)
})
friendRequestEvent.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onGroupTransaction(groupId, transactionType)

🔐 An event for when a group transaction is made, for example a purchase. This event has a rate of one request per 60 sec, which is more than the typical 10 seconds. This is due to the unusually low rate limit on the transactions endpoint.

Note: The created field returned by this event will always have 0 milliseconds. This is due to a quirk on Roblox's side: These millisecond values fluctuate, meaning the event can misfire. Removing them avoids this problem.

Parameters:
Name Type Description
groupId number

The id of the group.

transactionType "Sale" | "Purchase" | "AffiliateSale" | "DevEx" | "GroupPayout" | "AdImpressionPayout"

The transaction type.

View Source lib/economy/onGroupTransaction.js, line 35

An EventEmitter that emits when a transaction is made.

Example
const noblox = require("noblox.js")
// Login using your cookie
const transactionEvent = noblox.onGroupTransaction(1)
transactionEvent.on("data", function(data) {
 console.log("New Transaction!", data)
})
transactionEvent.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# async onJoinRequest(group)

🔐 An event for when someone makes a request to join the group.

Parameters:
Name Type Description
group number

The id of the group.

View Source lib/groups/onJoinRequest.js, line 29

An EventEmitter that emits when someone tries to join.

Example
const noblox = require("noblox.js")
// Login using your cookie
const e = noblox.onJoinRequest()
e.on("data", function(data) {
 console.log("New request!", data)
})
e.on("error", function (err) {
  ...
})

# async onJoinRequestHandle(group)

🔐 An event for when someone is added to the join requests, which allows you to handle the join request as part of a screening process. Emits all join requests and waits until all of them have been resolved by firing the handle event with the request and either true or false. You can also pass a third argument callback to handle to execute once the join request has been handled. Once all requests on a page have been resolved, the next page is collected. Make sure that all join requests are handled in some way. Because this function has to wait for input, it does handle timeouts but does them within the function as opposed to within shortPoll.

The use of this function is generally pretty complex. If it is not as working as you expect, you may actually be wanting to use onJoinRequest.

Parameters:
Name Type Description
group number

The id of the group.

View Source lib/groups/onJoinRequestHandle.js, line 47

An EventEmitter that emits when someone tries to join.

Example
const noblox = require("noblox.js")
// Login using your cookie

var blacklist = [1, 261]
var evt = noblox.onJoinRequestHandle(18)
evt.on('data', function (request) {
noblox.getIdFromUsername(request.username).then(function (id) {
for (var i = 0; i < blacklist.length; i++) {
   if (blacklist[i] === id) {
     evt.emit('handle', request, false);
     return;
   }
 }
 evt.emit('handle', request, true, function () {
   console.log(`Welcome ${id} to the group`)
 });
});
});

# onMessage()

🔐 An event for when a user sends you a message via. the older 'email-like' message system. To receive chat messages, see the onNewMessage method.

See:

View Source lib/privatemessages/onMessage.js, line 32

An EventEmitter that emits when a user sends you a message.

Example
const noblox = require("noblox.js")
// Login using your cookie
const messageEvent = noblox.onMessage()
messageEvent.on("data", function(data) {
 console.log("New message! ", data)
})
messageEvent.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onNewConversation()

🔐 An event for when a conversation is created.

View Source lib/chat/onNewConversation.js, line 25

An EventEmitter that emits when a conversation is created.

Example
const noblox = require("noblox.js")
// Login using your cookie
const conversationEvent = noblox.onNewConversation()
conversationEvent.on("data", function(data) {
 console.log("New conversation! ", data)
})
conversationEvent.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onNewMessage()

🔐 An event for when someone messages you via. chat. This event will only emit for messages sent via. chat windows on the website - those in the pop-up/overlay window. To handle messages sent via. the older email-like message function, see onMessage.

See:

View Source lib/chat/onNewMessage.js, line 28

An EventEmitter that emits when someone messages you.

Example
const noblox = require("noblox.js")
// Login using your cookie
const messageEvent = noblox.onNewMessage()
messageEvent.on("data", function(data) {
 console.log("New chat message! ", data)
})
messageEvent.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onNewMessageBySelf()

🔐 An event for when you send a new message.

View Source lib/chat/onNewMessageBySelf.js, line 25

An EventEmitter that emits when you send a new message.

Example
const noblox = require("noblox.js")
// Login using your cookie
const messageSent = noblox.onNewMessageBySelf()
messageSent.on("data", function(data) {
 console.log("Sent chat message! ", data)
})
messageSent.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onNotification()

🔐 An event for when you get a notification.

View Source lib/client/onNotification.js, line 31

An EventEmitter that emits when you get a notification.

Example
const noblox = require("noblox.js")
// Login using your cookie
const notification = noblox.onNotification()
notification.on("data", function(data) {
 console.log("New notification! ", data)
})
notification.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onPartyDeleted()

🔐 An event for when a party is deleted.

View Source lib/party/onPartyDeleted.js, line 25

An EventEmitter that emits when a party is deleted.

Example
const noblox = require("noblox.js")
// Login using your cookie
const partyDeleted = noblox.onPartyDeleted()
partyDeleted.on("data", function(data) {
 console.log("Party deleted! ", data)
})
partyDeleted.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onPartyInvite()

🔐 An event for when you're invited to a party.

View Source lib/party/onPartyInvite.js, line 25

An EventEmitter that emits when you're invited to a party.

Example
const noblox = require("noblox.js")
// Login using your cookie
const partyInvite = noblox.onPartyInvite()
partyInvite.on("data", function(data) {
 console.log("Invited to party! ", data)
})
partyInvite.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onPartyJoinedGame()

🔐 An event for when a party joins a game.

View Source lib/party/onPartyJoinedGame.js, line 25

An EventEmitter that emits when a party joins a game.

Example
const noblox = require("noblox.js")
// Login using your cookie
const partyJoinedGame = noblox.onPartyJoinedGame()
partyJoinedGame.on("data", function(data) {
 console.log("Party joined game! ", data)
})
partyJoinedGame.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onPartyLeftGame()

🔐 An event for when a party leaves a game.

View Source lib/party/onPartyLeftGame.js, line 25

An EventEmitter that emits when a party leaves a game.

Example
const noblox = require("noblox.js")
// Login using your cookie
const partyLeftGame = noblox.onPartyLeftGame()
partyLeftGame.on("data", function(data) {
 console.log("Party left game! ", data)
})
partyLeftGame.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onPartySelfJoined()

🔐 An event for when you join a party.

View Source lib/party/onPartySelfJoined.js, line 25

An EventEmitter that emits when you join a party.

Example
const noblox = require("noblox.js")
// Login using your cookie
const joinedParty = noblox.onPartySelfJoined()
joinedParty.on("data", function(data) {
 console.log("You joined a party! ", data)
})
joinedParty.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onPartySelfLeft()

🔐 An event for when you leave a party.

View Source lib/party/onPartySelfLeft.js, line 25

An EventEmitter that emits when you leave a party.

Example
const noblox = require("noblox.js")
// Login using your cookie
const leftParty = noblox.onPartySelfLeft()
leftParty.on("data", function(data) {
 console.log("You left a party! ", data)
})
leftParty.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onPartyUserJoined()

🔐 An event for when someone joins a party.

View Source lib/party/onPartyUserJoined.js, line 25

An EventEmitter that emits when someone joins a party.

Example
const noblox = require("noblox.js")
// Login using your cookie
const partyJoined = noblox.onPartyUserJoined()
partyJoined.on("data", function(data) {
 console.log("Someone joined a party! ", data)
})
partyJoined.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onPartyUserLeft()

🔐 An event for when someone leaves a party.

View Source lib/party/onPartyUserLeft.js, line 25

An EventEmitter that emits when someone leaves a party.

Example
const noblox = require("noblox.js")
// Login using your cookie
const partyLeft = noblox.onPartyUserLeft()
partyLeft.on("data", function(data) {
 console.log("Someone left party! ", data)
})
partyLeft.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onShout(group)

🔐 An event for when the shout is changed.

Parameters:
Name Type Description
group number

The id of the group.

View Source lib/groups/onShout.js, line 29

An EventEmitter that emits when someone shouts.

Example
const noblox = require("noblox.js")
// Login using your cookie
const shoutEvent = noblox.onShout(1)
shoutEvent.on("data", function(data) {
 console.log("New Shout!", data)
})
shoutEvent.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onUserOnline()

🔐 An event for when someone comes online.

View Source lib/chat/onUserOnline.js, line 25

An EventEmitter that emits when someone comes online.

Example
const noblox = require("noblox.js")
// Login using your cookie
const userOnlineEvent = noblox.onUserOnline()
userOnlineEvent.on("data", function(data) {
 console.log("User online! ", data)
})
userOnlineEvent.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onUserTyping()

🔐 An event for when someone starts typing in a chat.

View Source lib/chat/onUserTyping.js, line 25

An EventEmitter that emits when someone starts typing in a chat.

Example
const noblox = require("noblox.js")
// Login using your cookie
const userTyping = noblox.onUserTyping()
userTyping.on("data", function(data) {
 console.log("User typing! ", data)
})
userTyping.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# onWallPost(group)

🔐 An event for when someone posts on the group wall.

Parameters:
Name Type Description
group number

The id of the group.

View Source lib/groups/onWallPost.js, line 29

An EventEmitter that emits when someone posts on the group wall.

Example
const noblox = require("noblox.js")
// Login using your cookie
const wallpostEvent = noblox.onWallPost(1)
wallpostEvent.on("data", function(data) {
 console.log("New post!", data)
})
wallpostEvent.on("error", function(err) {
 console.error("Something went wrong: ", err)
 // Handle error as needed
})

# outfitDetails(outfitId) → {Promise.<AvatarOutfitDetails>}

✅ Get the details of an outfit.

Parameters:
Name Type Description
outfitId number

The id of the outfit.

View Source lib/avatar/outfitDetails.js, line 16

Promise.<AvatarOutfitDetails>
Example
const noblox = require("noblox.js")
const outfit = await noblox.outfitDetails(111)

# outfits(userId, pageopt, itemsPerPageopt) → {Promise.<GetOutfitsResult>}

✅ Get a user's outfits.

Parameters:
Name Type Attributes Description
userId number

The userId of the user.

page number <optional>

The page to index.

itemsPerPage number <optional>

The number of results on each page.

View Source lib/avatar/outfits.js, line 19

Promise.<GetOutfitsResult>
Example
const noblox = require("noblox.js")
const outfits = await noblox.outfits(1)

# postToTopic(universeId, topic, data) → {Promise.<boolean>}

☁️ Publish a message to a subscribed topic.

Parameters:
Name Type Description
universeId number

The id of the universe.

topic string

The name of the topic.

data Object | string

The data to post.

View Source lib/games/publishToTopic.js, line 21

Promise.<boolean>
Example
const noblox = require("noblox.js")
const data = { targetUser: 123456789, staffMember: 1210019099, action: "Kick" }

await noblox.publishToTopic(2152417643, "ModerateUser", data)

# promote(group, target) → {Promise.<ChangeRankResult>}

🔐 Promote a user.

Parameters:
Name Type Description
group number

The id of the group.

target number

The id of the user.

View Source lib/groups/promote.js, line 22

Promise.<ChangeRankResult>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.promote(1, 2)

# redrawAvatar() → {Promise.<void>}

🔐 Redraw your avatar.

View Source lib/avatar/redrawAvatar.js, line 17

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.redrawAvatar()

# refreshCookie(cookieopt) → {Promise.<string>}

🔐 Refreshes the stored cookie, stores it, and returns it.

Parameters:
Name Type Attributes Description
cookie string <optional>

The cookie to refresh.

Deprecated:

View Source lib/util/refreshCookie.js, line 23

Promise.<string>
Example
const noblox = require("noblox.js")
const newCookie = await noblox.refreshCookie("COOKIEHERE")

# removeAssetId(assetId) → {Promise.<void>}

🔐 Removes an asset from your avatar.

Parameters:
Name Type Description
assetId number

The assetId to remove.

View Source lib/avatar/removeAssetId.js, line 19

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.removeAssetId(1)

# removeFriend(userId) → {Promise.<void>}

🔐 Remove a user from your friends list.

Parameters:
Name Type Description
userId number

The id of the user.

View Source lib/friends/removeFriend.js, line 22

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.removeFriend(123456)

# removeFromGroupConversation(conversationId, userId) → {Promise.<ConversationRemoveResponse>}

🔐 Remove a user from the group conversation.

Parameters:
Name Type Description
conversationId number

The id of the conversation.

userId number

The id of the user.

View Source lib/chat/removeFromGroupConversation.js, line 20

Promise.<ConversationRemoveResponse>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.removeFromGroupConversation(1, 2)

# renameGroupConversation(conversationId, title) → {Promise.<ConversationRenameResponse>}

🔐 Rename a group conversation.

Parameters:
Name Type Description
conversationId number

The id of the conversation.

title string

The new title of the group.

View Source lib/chat/renameGroupConversation.js, line 20

Promise.<ConversationRenameResponse>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.renameGroupConversation(1, "A cool group.")

# searchGroups(keyword, prioritizeExactMatchopt, limitopt) → {Promise.<Array.<GroupSearchItem>>}

✅ Searches for groups by a given search term.

Parameters:
Name Type Attributes Default Description
keyword string

The keyword or search term to search by.

prioritizeExactMatch boolean <optional>
false

Whether or not to prioritize the exact match for the keyword

limit number <optional>
100

The maximum number of groups to return. Supply 0 to apply no limit, returning all results. Note: This may significantly increase the time to execute and return potentially thousands of results.

View Source lib/groups/searchGroups.js, line 23

Promise.<Array.<GroupSearchItem>>
Example
const noblox = require("noblox.js")
const groupInfo = await noblox.searchGroups("noblox.js");

# searchUsers(keyword, limit, cursor) → {Promise.<Array.<UserSearchResult>>}

✅ Gets a list of users matching the keyword

Parameters:
Name Type Description
keyword string

The search term to use

limit 10 | 25 | 50 | 100

The maximum number of matching users to return

cursor string

The cursor to use when fetching the next or previous page

View Source lib/users/searchUsers.js, line 22

Promise.<Array.<UserSearchResult>>
Example
const noblox = require("noblox.js")
noblox.searchUsers("bob", 10, "cursorstring")

# sendChatMessage(conversationId, message) → {Promise.<SendChatResponse>}

🔐 Send a message in a chat.

Parameters:
Name Type Description
conversationId number

The id of the conversation.

message string

The message to send.

View Source lib/chat/sendChatMessage.js, line 20

Promise.<SendChatResponse>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.sendChatMessage(1, "Hello world!")

# sendFriendRequest(userId) → {Promise.<void>}

🔐 Send a friend request to a user.

Parameters:
Name Type Description
userId number

The id of the user.

View Source lib/friends/sendFriendRequest.js, line 22

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.sendFriendRequest(123456)

# sendTrade(targetUserId, sendingOffer, recievingOffer) → {Promise.<SendTradeResponse>}

🔐 Send a trade to another user.

Parameters:
Name Type Description
targetUserId number

The user to send the trade to.

sendingOffer TradeOffer

The offer to send to the other user.

recievingOffer TradeOffer

The offer you are requesting from the other user.

View Source lib/trades/sendTrade.js, line 24

Promise.<SendTradeResponse>
Example
const noblox = require("noblox.js")
noblox.sendTrade(80231025, { userAssetIds: [23289506393] }, { userAssetIds: [32924150919] })

# setAPIKey(apiKey) → {Promise.<boolean>}

🔑 Sign in with an API key.

Parameters:
Name Type Description
apiKey string

The api key to sign in with.

View Source lib/client/setAPIKey.js, line 16

Promise.<boolean>
Example
const noblox = require("noblox.js")
noblox.setAPIKey("A3H+1rfQj0Kwz0CsSO2ciuT/e/ZHekahvehGG3PPmFOASZx1")

# setAvatarBodyColors(headColorId, torsoColorId, rightArmColorId, leftArmColorId, rightLegColorId, leftLegColorId) → {Promise.<void>}

🔐 Set the colors of your avatar.

Parameters:
Name Type Description
headColorId number

The BrickColor Code of the head.

torsoColorId number

The BrickColor Code of the torso.

rightArmColorId number

The BrickColor Code of the right arm.

leftArmColorId number

The BrickColor Code of the left arm.

rightLegColorId number

The BrickColor Code of the right leg.

leftLegColorId number

The BrickColor Code of the left leg.

View Source lib/avatar/setAvatarBodyColors.js, line 24

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.setAvatarBodyColors(125, 125, 125, 125, 125, 125)

# setAvatarScales(height, width, head, depthopt, proportionopt, bodyTypeopt) → {Promise.<void>}

🔐 Set the scale of your avatar.

Parameters:
Name Type Attributes Description
height number

The height scale of the avatar.

width number

The width scale of the avatar.

head number

The head scale of the avatar.

depth number <optional>

The depth scale of the avatar.

proportion number <optional>

The proportion scale of the avatar.

bodyType number <optional>

The body type scale of the avatar.

View Source lib/avatar/setAvatarScales.js, line 24

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.setAvatarScales(1, 1, 1, 1, 1, 1)

# setChatUserTyping(conversationId, isTyping) → {Promise.<UpdateTypingResponse>}

🔐 Trigger the typing action in a conversation.

Parameters:
Name Type Description
conversationId number

The id of the conversation.

isTyping boolean

If the user is typing.

View Source lib/chat/setChatUserTyping.js, line 20

Promise.<UpdateTypingResponse>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.setChatUserTyping(1, true)

# setCookie(cookie, validateopt) → {Promise.<AuthenticatedUserData>}

🔑 Sign in with a cookie.

Parameters:
Name Type Attributes Default Description
cookie string

The cookie to sign in with.

validate boolean <optional>
true

Whether to validate the cookie or not.

View Source lib/client/setCookie.js, line 21

Promise.<AuthenticatedUserData>
Example
const noblox = require("noblox.js")
noblox.setCookie("cookie").then(function() {
  //your code here
})

# setDatastoreEntry(universeId, datastoreName, entryKey, body, scopeopt, matchVersionopt, exclusiveCreateopt, robloxEntryUserIDsopt, robloxEntryAttributesopt) → {Promise.<EntryVersion>}

☁️ Sets the value, metadata and user IDs associated with an entry.

Note: You cannot use both matchVersion and exclusiveCreate. MD5 checksum is automatically generated.

API Key Permissions:
  • Create entry
  • Update entry
Parameters:
Name Type Attributes Default Description
universeId number

The ID of the universe

datastoreName string

Name of the data store

entryKey string

The key which identifies the entry.

body any

The value the key should be set to.

scope string <optional>
global

Defaults to global, similar to Lua API.

matchVersion string <optional>

Only update if current version matches this.

exclusiveCreate boolean <optional>
false

Only create the entry if it does not exist.

robloxEntryUserIDs Array.<number> <optional>

Comma-separated list of Roblox user IDs the entry is tagged with. If not provided, existing user IDs are cleared.

robloxEntryAttributes object <optional>

If not provided, existing attributes are cleared.

View Source lib/datastores/setDatastoreEntry.js, line 36

Promise.<EntryVersion>
Example
const noblox = require("noblox.js")
const response = await noblox.setDatastoreEntry({ universeId: 127407415, datastoreName: 'LevelStore', entryKey: 'Level_Random', body: 230, robloxEntryUserIDs: [55549140], robloxEntryAttributes: { node: true } }))

# setGroupDescription(group, descriptionopt) → {Promise.<GroupDescriptionResult>}

🔐 Update a group description

Parameters:
Name Type Attributes Default Description
group number

The id of the group.

description string <optional>
""

The new description for the group

View Source lib/groups/setGroupDescription.js, line 22

Promise.<GroupDescriptionResult>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.setGroupDescription(1, "Group Description!")

# setGroupName(group, nameopt) → {Promise.<GroupNameResult>}

🔐 Update a group name. This method will trigger a Robux charge to your account, and can only be performed by the group owner.

Parameters:
Name Type Attributes Description
group number

The id of the group.

name string <optional>

The new name for the group

View Source lib/groups/setGroupName.js, line 23

Promise.<GroupNameResult>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.setGroupName(1, "Cool group")

# setOptions(newOptions)

✅ Updates library options. This allows you to modify settings such as time-out, or number of event retries without altering the settings.json file. Objects passed to this function should match the format of the settings.json file. Unknown keys, or malformed options will be rejected with an error.

Parameters:
Name Type Description
newOptions Partial.<NobloxOptions>

The new options to set, structured as per settings.json

See:

View Source lib/util/setOptions.js, line 23

void

Example
const noblox = require("noblox.js")
// This example overrides getPlayerThumbnail()'s response URL when a thumbnail is moderated.
// You usually want to run this before logging in with your cookie.
noblox.setOptions({
 thumbnail: {
   failedUrl: {
     blocked: "https://raw.githubusercontent.com/noblox/noblox.js/master/img/noblox-js.png"
   }
 }
})

# setPlayerAvatarType(avatarType) → {Promise.<void>}

🔐 Set the type of your avatar.

Parameters:
Name Type Description
avatarType PlayerAvatarType

The type of your avatar. (R6 or R15)

View Source lib/avatar/setPlayerAvatarType.js, line 19

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.setPlayerAvatarType("R6")

# setRank(group, target, rank) → {Promise.<Role>}

🔐 Change a user's rank.

Parameters:
Name Type Description
group number

The id of the group.

target number

The id of the user whose rank is being changed.

rank number | string | Role

The rank, roleset ID, name of the role, or the actual Role itself.

View Source lib/groups/setRank.js, line 25

Promise.<Role>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.setRank(1, 1, "Customer")

# setWearingAssets(assetIds) → {Promise.<void>}

🔐 Set the assets your avatar is wearing.

Parameters:
Name Type Description
assetIds Array.<number>

An array of asset IDs to wear.

View Source lib/avatar/setWearingAssets.js, line 19

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.setWearingAssets([1, 2, 3])

# shortPoll(getLatest) → {Promise.<GetLatestResponse>}

✅ This is the base for events that do not rely on true streams. The getLatest function receives some value that represents the latest version of something (eg. a date or unique ID) and determines if there is new information, every time it is fired it waits delay ms before being fired again. Every time it must return an object with the field latest, representing the latest value (which will not change if new information was not received), and an array data which has the new values (if there are multiple they each have their own index, if there is only one then it is by itself in the array). If latest is equal to -2, the returned data will be processed even if it is the initial run (which usually only establishes the latest value). If the return object has a true repeat value, the function latest will be run again immediately after. If delay is a string it will take the number from that string key in the event object of the settings.json file. When the function is first called it will initialize getLatest with the value -1 and then emit the connect event. Whenever data is received, it will emit the data event for each value. If the close event is emitted the function will no longer run. If an error occurs the error event will be emitted, the function will log a retry and after the number of max retries as specified by settings, it will emit the close event. The getLatest function will be marked as failed if it does not resolve within timeout ms (which can be disabled if timeout is negative). If getLatest fails for any reason (including timeout) it will be retried maxRetries times before stopping.

Parameters:
Name Type Description
getLatest function

The function to use to get the latest. Should return an object with key 'data' - an array containing output data, and the new 'latest' value.

View Source lib/util/shortPoll.js, line 31

Promise.<GetLatestResponse>

# shout(group, messageopt) → {Promise.<GroupShout>}

🔐 Change a group's shout.

Parameters:
Name Type Attributes Default Description
group number

The id of the group.

message string <optional>
""

The message to shout

View Source lib/groups/shout.js, line 22

Promise.<GroupShout>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.shout(1, "Hello world!")

# start121Conversation(userId) → {Promise.<void>}

🔐 Start a conversation with another user.

Parameters:
Name Type Description
userId number

The id of the user.

View Source lib/chat/start121Conversation.js, line 19

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.start121Conversation(1)

# startCloudEditConversation(placeId) → {Promise.<void>}

🔐 Start a Cloud Edit/Team Create conversation.

Parameters:
Name Type Description
placeId number

The id of the place.

View Source lib/chat/startCloudEditConversation.js, line 19

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.startCloudEditConversation(1117747196)

# startGroupConversation(userIds, title) → {Promise.<StartGroupConversationResponse>}

🔐 Start a group conversation.

Parameters:
Name Type Description
userIds Array.<number>

An array of userIds to add.

title string

The title of the group.

View Source lib/chat/startGroupConversation.js, line 20

Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.startGroupConversation([1, 2, 3], "A group conversation.")

# timeout(promise, timeoutTime, reason) → {Promise.<unknown>}

A basic replacement for the Bluebird 'timeout' method. Returns a Promise which will resolve or reject with the result of the given promise once it resolves, or reject if the promise should fail to resolve within the supplied timeout. An optional reason can also be supplied.

Parameters:
Name Type Default Description
promise

The Promise to apply a timeout to.

timeoutTime

The timeout to apply to the Promise.

reason operation timed out

Optional String reason for the timeout.

View Source lib/internal/timeout.js, line 13

Promise.<unknown>

# unblock(userId) → {Promise.<void>}

🔐 Unblock a user.

Parameters:
Name Type Description
userId number

The id of the user.

View Source lib/accountsettings/unblock.js, line 22

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.unblock(123456)

# unfollow(userId) → {Promise.<void>}

🔐 Unfollow a user.

Parameters:
Name Type Description
userId number

The id of the user.

View Source lib/friends/unfollow.js, line 22

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.unfollow(123456)

# updateBadgeInfo(badgeId, nameopt, descriptionopt, enabledopt) → {Promise.<void>}

🔐 Configure a badge.

Parameters:
Name Type Attributes Description
badgeId number

The badge's id.

name string <optional>

The new name of the badge.

description string <optional>

The new description of the badge.

enabled boolean <optional>

If the badge is enabled.

View Source lib/badges/updateBadgeInfo.js, line 25

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.updateBadgeInfo(1, "Badge", "A cool badge.", true)

# updateDeveloperProduct(universeId, productId, priceInRobux, nameopt, descriptionopt) → {Promise.<void>}

🔐 Update a developer product.

Parameters:
Name Type Attributes Description
universeId number

The id of the universe.

productId number

The id of the product.

priceInRobux number

The new price of the product.

name string <optional>

The new name of the product.

description string <optional>

The new description of the product.

View Source lib/games/updateDeveloperProduct.js, line 23

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.updateDeveloperProduct(1, 2, 10, "An Updated Developer Product", "My new updated product.")

# updateUniverse(universeId, settings) → {Promise.<UpdateUniverseResponse>}

🔐 Modifies a universe's settings

Parameters:
Name Type Description
universeId number

The universeId of the experience

settings UniverseSettings

The settings to update

View Source lib/develop/updateUniverse.js, line 23

Promise.<UpdateUniverseResponse>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.updateUniverse(2421261122, { name: "The best game ever!" })

# updateUniverseAccess(universeId, isPublicopt) → {Promise.<void>}

🔐 Modifies a universe's public access setting

Parameters:
Name Type Attributes Description
universeId number

The universeId of the experience

isPublic boolean <optional>

The visibility and access of the universe; shuts down all running instances if set to false

View Source lib/develop/updateUniverseAccess.js, line 23

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.updateUniverseAccess(2421261122, true)

# uploadAnimation(data, itemOptionsopt, assetIdopt) → {Promise.<number>}

🔐 Upload an animation, either as a new asset or by overwriting an existing animation.

Parameters:
Name Type Attributes Description
data string | Stream

The rbxm file containing the KeyframeSequence.

itemOptions object <optional>

The options for the upload. Only optional if assetId is not provided.

name string <optional>

The name of the animation.

description string <optional>

The description for the animation.

copyLocked boolean <optional>

If the animation is copy-locked.

allowComments boolean <optional>

If comments are allowed.

groupId number <optional>

The group to upload the animation to. This is ignored if the assetId is provided.

assetId number <optional>

An existing assetId to overwrite.

View Source lib/asset/uploadAnimation.js, line 36

Promise.<number>
Example
const noblox = require("noblox.js")
const fs = require("fs")
// Login using your cookie
const assetId = await noblox.uploadAnimation(fs.readFileSync("./KeyframeSequence.rbxm"), {
 name: "A cool animation",
 description: "This is a very cool animation",
 copyLocked: false, //The asset is allowed to be copied.
 allowComments: false
}, 7132858975)

# uploadItem(name, assetType, file, groupIdopt) → {Promise.<UploadItemResponse>}

🔐 Upload an item.

Parameters:
Name Type Attributes Description
name string

The name of the asset.

assetType number

The id for the asset type.

file ReadStream

The read stream for the asset being uploaded.

groupId number <optional>

The group to upload the asset to.

View Source lib/asset/uploadItem.js, line 26

Promise.<UploadItemResponse>
Example
const noblox = require("noblox.js")
const fs = require("fs")
// Login using your cookie
await noblox.uploadItem("A cool decal.", 13, fs.createReadStream("./Image.png"))

# uploadModel(data, itemOptionsopt, assetIdopt) → {Promise.<UploadModelResponse>}

🔐 Upload a model.

Parameters:
Name Type Attributes Description
data string | Stream

The model data.

itemOptions object <optional>

The options for the upload.

name string <optional>

The name of the model.

description string <optional>

The description for the model.

copyLocked boolean <optional>

If the model is copy-locked.

allowComments boolean <optional>

If comments are allowed.

groupId number <optional>

The group to upload the model to.

assetId number <optional>

An existing assetId to overwrite.

View Source lib/asset/uploadModel.js, line 36

Promise.<UploadModelResponse>
Example
const noblox = require("noblox.js")
const fs = require("fs")
// Login using your cookie
noblox.uploadModel(fs.readFileSync("./model.rbxm"), {
 name: "A cool model",
 description: "This is a very cool model",
 copyLocked: false, //The asset is allowed to be copied.
 allowComments: false,
 groupId: 1
}, 1117747196)

# wearAssetId(assetId) → {Promise.<void>}

🔐 Wear a specific asset.

Parameters:
Name Type Description
assetId number

The assetId to wear.

View Source lib/avatar/wearAssetId.js, line 19

Promise.<void>
Example
const noblox = require("noblox.js")
// Login using your cookie
noblox.wearAssetId(1117747196)

Type Definitions

object

# AssetIdList

Properties:
Name Type Description
assetIds Array.<number>

View Source typings/jsDocs.ts, line 259

object

# AssetOwner

Properties:
Name Type Description
userId number
username string
buildersClubMembershipType number

View Source typings/jsDocs.ts, line 1287

object

# AssetRecentItem

Properties:
Name Type Attributes Description
id number
name string
type RecentItemType
assetType AvatarAssetType
isEditable boolean <optional>

View Source typings/jsDocs.ts, line 319

object

# AssetRecentItemsResult

Properties:
Name Type Description
data Array.<AssetRecentItem>
total number

View Source typings/jsDocs.ts, line 328

object

# AssetTypeRulesModel

Properties:
Name Type Description
min number
max number
increment number

View Source typings/jsDocs.ts, line 213

object

# AuditItem

Properties:
Name Type Description
actor AuditItemActor
actionType string
description object
created Date

View Source typings/jsDocs.ts, line 909

object

# AuditItemActor

Properties:
Name Type Description
user GroupUser
role Role

View Source typings/jsDocs.ts, line 903

object

# AuditPage

Properties:
Name Type Attributes Description
data Array.<AuditItem>
nextPageCursor string <optional>
previousPageCursor string <optional>

View Source typings/jsDocs.ts, line 917

object

# AuthenticatedUserData

Properties:
Name Type Description
id number
name string
displayName string

View Source typings/jsDocs.ts, line 1034

object

# AvatarAsset

Properties:
Name Type Description
id number
name string
assetType AvatarAssetType

View Source typings/jsDocs.ts, line 290

object

# AvatarAssetType

Properties:
Name Type Description
id number
name string

View Source typings/jsDocs.ts, line 284

object

# AvatarBodyColors

Properties:
Name Type Description
headColorId number
torsoColorId number
rightArmColorId number
leftArmColorId number
rightLegColorId number
leftLegColorId number

View Source typings/jsDocs.ts, line 274

object

# AvatarEntry

Properties:
Name Type Description
url string
final boolean

View Source typings/jsDocs.ts, line 1046

object

# AvatarInfo

Properties:
Name Type Description
scales AvatarScale
playerAvatarType PlayerAvatarType
bodyColors AvatarBodyColors
assets Array.<AvatarAsset>
defaultShirtApplied boolean
defaultPantsApplied boolean

View Source typings/jsDocs.ts, line 301

object

# AvatarOutfit

Properties:
Name Type Description
id number
name string
isEditable boolean

View Source typings/jsDocs.ts, line 345

object

# AvatarOutfitDetails

Properties:
Name Type Description
id number
name string
assets Array.<AvatarAsset>
bodyColors Array.<AvatarBodyColors>
scale AvatarScale
playerAvatarType PlayerAvatarType
isEditable boolean

View Source typings/jsDocs.ts, line 334

object

# AvatarRules

Properties:
Name Type Description
playerAvatarTypes Array.<string>
scales AvatarRulesScales
wearableAssetTypes Array.<WearableAssetType>
bodyColorsPalette Array.<BodyColorModel>
basicBodyColorsPalette Array.<BodyColorModel>
minimumDeltaEBodyColorDifference number
proportionsAndBodyTypeEnabledForUser boolean
defaultClothingAssetLists DefaultClothingAssetLists
bundlesEnabledForUser boolean
emotesEnabledForUser boolean

View Source typings/jsDocs.ts, line 245

object

# AvatarRulesScales

Properties:
Name Type Description
scalename: AssetTypeRulesModel

string

View Source typings/jsDocs.ts, line 220

object

# AvatarScale

Properties:
Name Type Description
height number
width number
head number
depth number
proportion number
bodyType number

View Source typings/jsDocs.ts, line 264

object

# BadgeAwarder

Properties:
Name Type Description
id number
type string

View Source typings/jsDocs.ts, line 1229

object

# BadgeInfo

Properties:
Name Type Attributes Description
id number
name string
description string <optional>
displayName string
displayDescription string <optional>
enabled boolean
iconImageId number
displayIconImageId number
created Date
updated Date
statistics BadgeStatistics
awardingUniverse BadgeUniverse

View Source typings/jsDocs.ts, line 1271

object

# BadgeStatistics

Properties:
Name Type Description
pastDayAwardedCount number
awardedCount number
winRatePercentage number

View Source typings/jsDocs.ts, line 1241

object

# BadgeUniverse

Properties:
Name Type Description
id number
name string
rootPlaceId number

View Source typings/jsDocs.ts, line 1248

object

# BodyColorModel

Properties:
Name Type Description
brickColorId number
hexColor string
name string

View Source typings/jsDocs.ts, line 232

object

# BuyAssetResponse

Properties:
Name Type Description
productId number
price number

View Source typings/jsDocs.ts, line 124

object

# BuyProductInfo

Properties:
Name Type Description
ProductId number
Creator object
Id number
PriceInRobux number
UserAssetId number

View Source typings/jsDocs.ts, line 109

object

# CanTradeResponse

Properties:
Name Type Description
canTrade boolean
status string

View Source typings/jsDocs.ts, line 1334

object

# ChangeRankResult

Properties:
Name Type Description
newRole Role
oldRole Role

View Source typings/jsDocs.ts, line 805

object

# ChartDataPointResponse

Properties:
Name Type Attributes Description
value number <optional>
date Date <optional>

View Source typings/jsDocs.ts, line 130

object

# ChatConversation

Properties:
Name Type Description
id number
title string
initiator ChatParticipant
hasUnreadMessages boolean
participants Array.<ChatParticipant>
conversationType "OneToOneConversation" | "MultiUserConversation" | "CloudEditConversation"
conversationTitle ChatConversationTitle
lastUpdated Date
conversationUniverse ChatConversationUniverse

View Source typings/jsDocs.ts, line 457

object

# ChatConversationTitle

Properties:
Name Type Description
titleForViewer string
isDefaultTitle boolean

View Source typings/jsDocs.ts, line 478

object

# ChatConversationUniverse

Properties:
Name Type Description
universeId number
rootPlaceId number

View Source typings/jsDocs.ts, line 484

object

# ChatConversationWithMessages

Properties:
Name Type Description
conversationId number
chatMessages Array.<ChatMessage>

View Source typings/jsDocs.ts, line 510

"LuaChat" | "ConversationUniverse" | "PlayTogether" | "Party" | "GameLink" | "OldPlayTogether"

# ChatFeatureNames

View Source typings/jsDocs.ts, line 490

object

# ChatMessage

Properties:
Name Type Description
id string
senderType "User" | "System"
sent string
read boolean
messageType "PlainText" | "Link" | "EventBased"
decorators Array.<string>
senderTargetId number
content string
link ChatMessageLink
eventBased ChatMessageEventBased

View Source typings/jsDocs.ts, line 420

object

# ChatMessageEventBased

Properties:
Name Type Description
type "SetConversationUniverse"
setConversationUniverse ChatMessageSetConversationUniverseEventBased

View Source typings/jsDocs.ts, line 445

object
Properties:
Name Type Description
universeId number

View Source typings/jsDocs.ts, line 440

object
Properties:
Name Type Description
type "Game"
game ChatMessageGameLink

View Source typings/jsDocs.ts, line 434

object

# ChatMessageSetConversationUniverseEventBased

Properties:
Name Type Description
actorUserId number
universeId number

View Source typings/jsDocs.ts, line 451

object

# ChatParticipant

Properties:
Name Type Description
type "User" | "System"
targetId number
name string
displayName string

View Source typings/jsDocs.ts, line 470

object

# ChatRolloutFeature

Properties:
Name Type Description
featureName ChatFeatureNames
isRolloutEnabled boolean

View Source typings/jsDocs.ts, line 499

object

# ChatSettings

Properties:
Name Type Description
chatEnabled boolean

Is chat enabled for the user.

isActiveChatUser boolean

Was the Last ChatMessage Sent within the last x days or the account was created in the last x days? Note: user is active by default unless he does not chat for more than x days after account creation

View Source typings/jsDocs.ts, line 414

object

# CheckDeveloperProductNameResult

Properties:
Name Type Description
Success boolean
Message string

When success is true: "Name available", When success is false, you can get: "Product name already exists"

View Source typings/jsDocs.ts, line 632

object

# CollectibleEntry

Properties:
Name Type Attributes Description
userAssetId number
serialNumber number <optional>
assetId number
name string
recentAveragePrice number
originalPrice number <optional>
assetStock number <optional>
buildersClubMembershipType number

View Source typings/jsDocs.ts, line 1294

object

# Collectibles

Properties:
Name Type Description
collectibles Array.<CollectibleEntry>

View Source typings/jsDocs.ts, line 1306

object

# ConfigureItemResponse

Properties:
Name Type Attributes Description
name string
assetId number
description string <optional>
price number <optional>
isCopyingAllowed boolean <optional>

View Source typings/jsDocs.ts, line 204

object

# ConversationAddResponse

Properties:
Name Type Description
conversationId number
rejectedParticipants Array.<RejectedParticipant>
resultType string
statusMessage string

View Source typings/jsDocs.ts, line 367

object

# ConversationRemoveResponse

Properties:
Name Type Description
conversationId number
resultType string
statusMessage string

View Source typings/jsDocs.ts, line 375

object

# ConversationRenameResponse

Properties:
Name Type Description
conversationTitle string
resultType string
title ChatConversationTitle
statusMessage string

View Source typings/jsDocs.ts, line 382

object

# CookieJar

Properties:
Name Type Attributes Description
session string <optional>

View Source typings/jsDocs.ts, line 6

object

# Datastore

Properties:
Name Type Description
name string
createdTime Date

View Source typings/jsDocs.ts, line 1430

object

# DatastoreEntry

Properties:
Name Type Attributes Description
data any
metadata object
robloxEntryCreatedTime Date

(ISO datetime, UTC): the time at which the entry was created

lastModified Date

(ISO datetime, UTC): the time at which the entry was updated

robloxEntryVersion string

version of the entry being read

robloxEntryAttributes string <optional>
robloxEntryUserIDs string <optional>
contentMD5 string

the base-64 encoded MD5 checksum of the content

contentLength number

the content length in bytes

View Source typings/jsDocs.ts, line 1454

object

# DatastoreKeysResult

Properties:
Name Type Attributes Description
keys Array
nextPageCursor string <optional>

View Source typings/jsDocs.ts, line 1448

object

# DatastoresResult

Properties:
Name Type Attributes Description
datastores Array
nextPageCursor string <optional>

View Source typings/jsDocs.ts, line 1436

object

# DefaultClothingAssetLists

Properties:
Name Type Description
defaultShirtAssetIds Array.<number>
defaultPantAssetIds Array.<number>

View Source typings/jsDocs.ts, line 239

object

# DetailedTradeAsset

Properties:
Name Type Description
id number
serialNumber number
assetId number
name string
recentAveragePrice number
originalPrice number
assetStock number
membershipType string

View Source typings/jsDocs.ts, line 1357

object

# DetailedTradeOffer

Properties:
Name Type Description
user TradeUser
userAssets Array.<DetailedTradeAsset>
robux number

View Source typings/jsDocs.ts, line 1369

object

# DeveloperProduct

Properties:
Name Type Description
ProductId number
DeveloperProductId number
Name string
Description string
IconImageAssetId number
displayName string
displayDescription string
displayIcon number
PriceInRobux number

View Source typings/jsDocs.ts, line 595

object

# DeveloperProductAddResult

Properties:
Name Type Attributes Description
universeId number
name string
priceInRobux number
description string <optional>
productId string

View Source typings/jsDocs.ts, line 623

object

# DeveloperProductsResult

Properties:
Name Type Description
DeveloperProducts Array.<DeveloperProduct>
FinalPage boolean
PageSize number

View Source typings/jsDocs.ts, line 616

object

# EntryKey

Properties:
Name Type Description
scope string
key string

View Source typings/jsDocs.ts, line 1442

object

# EntryVersion

Properties:
Name Type Description
version string
deleted boolean
contentLength number
createdTime Date
objectCreatedTime Date

View Source typings/jsDocs.ts, line 1467

object

# EntryVersionsResult

Properties:
Name Type Description
versions Array
nextPageCursor string

View Source typings/jsDocs.ts, line 1476

object

# FollowEntry

Properties:
Name Type Description
isDeleted false
id number
name string
description string
created Date
displayName string

View Source typings/jsDocs.ts, line 1096

object

# FollowersPage

Properties:
Name Type Attributes Description
previousPageCursor string <optional>
nextPageCursor string <optional>
data Array.<FollowEntry>

View Source typings/jsDocs.ts, line 1113

object

# FollowingsPage

Properties:
Name Type Attributes Description
previousPageCursor string <optional>
nextPageCursor string <optional>
data Array.<FollowEntry>

View Source typings/jsDocs.ts, line 1106

object

# FriendEntry

Properties:
Name Type Attributes Description
created Date
id number
isBanned boolean
isDeleted boolean
isOnline boolean <optional>
name string
description string <optional>
displayName string
externalAppDisplayName string <optional>
friendFrequentRank number
friendFrequentScore number
presenceType UserPresenceType <optional>

View Source typings/jsDocs.ts, line 1075

number

# FriendRequest

View Source typings/jsDocs.ts, line 1166

object

# FriendRequestEntry

Properties:
Name Type Description
description string
created Date
isBanned boolean
id number
name string
displayName string

View Source typings/jsDocs.ts, line 1058

object

# FriendRequestsPage

Properties:
Name Type Attributes Description
previousPageCursor string <optional>
nextPageCursor string <optional>
data Array.<FriendRequestEntry>

View Source typings/jsDocs.ts, line 1068

object

# Friends

Properties:
Name Type Description
friends Array.<FriendEntry>

View Source typings/jsDocs.ts, line 1091

object

# GameInstance

Properties:
Name Type Description
id string
maxPlayers number
playing number
playerTokens Array.<string>
fps number
ping number

View Source typings/jsDocs.ts, line 523

object

# GamePassData

Properties:
Name Type Attributes Description
id number
name string
displayName string
productId number <optional>
price number <optional>

View Source typings/jsDocs.ts, line 639

object

# GamePassResponse

Properties:
Name Type Attributes Description
gamePassId number
name string <optional>
description string <optional>
price number <optional>
isForSale boolean <optional>
iconChanged boolean <optional>

View Source typings/jsDocs.ts, line 533

object

# GameRevenueData

Properties:
Name Type Description
Total object

View Source typings/jsDocs.ts, line 719

object

# GameRevenueResponse

Properties:
Name Type Description
placeId number
dataType number
dataGranularity number
startTime Date
endTime Date
data GameRevenueData

View Source typings/jsDocs.ts, line 724

object

# GetLatestResponse

Properties:
Name Type Attributes Description
latest number
data object
repeat boolean <optional>

View Source typings/jsDocs.ts, line 1423

object

# GetOutfitsResult

Properties:
Name Type Description
data Array.<AvatarOutfit>
total number

View Source typings/jsDocs.ts, line 352

object

# GetRolloutSettingsResult

Properties:
Name Type Description
rolloutFeatures Array.<ChatRolloutFeature>

View Source typings/jsDocs.ts, line 494

object

# GetUnreadConversationCountResult

Properties:
Name Type Description
count number

View Source typings/jsDocs.ts, line 505

object

# GetVerificationResponse

Properties:
Name Type Attributes Description
body string <optional>
inputs Inputs
header string

View Source typings/jsDocs.ts, line 1410

object

# Group

Properties:
Name Type Attributes Description
id number
name string
description string
owner GroupUser
shout GroupShout <optional>
memberCount number
isBuildersClubOnly boolean
publicEntryAllowed boolean
isLocked boolean

View Source typings/jsDocs.ts, line 811

object

# GroupAssetInfo

Properties:
Name Type Description
assetId number
name string

View Source typings/jsDocs.ts, line 851

object

# GroupDescriptionResult

Properties:
Name Type Description
newDescription string

View Source typings/jsDocs.ts, line 893

object

# GroupEconomyPermissions

Properties:
Name Type Description
spendGroupFunds boolean
advertiseGroup boolean
createItems boolean
manageItems boolean
addGroupPlaces boolean
manageGroupGames boolean
viewGroupPayouts boolean

View Source typings/jsDocs.ts, line 779

object

# GroupGameInfo

Properties:
Name Type Description
id number
name string
description string
creator object
id number
type string
rootPlace object
id number
type string
created Date
updated Date
placeVisits number

View Source typings/jsDocs.ts, line 835

"150x150" | "420x420"

# GroupIconSize

View Source typings/jsDocs.ts, line 734

object

# GroupJoinRequest

Properties:
Name Type Description
requester GroupJoinRequester
created Date

View Source typings/jsDocs.ts, line 962

object

# GroupJoinRequester

Properties:
Name Type Description
userId number
username string
displayName string

View Source typings/jsDocs.ts, line 955

object

# GroupJoinRequestsPage

Properties:
Name Type Attributes Description
previousPageCursor string <optional>
nextPageCursor string <optional>
data Array.<GroupJoinRequest>

View Source typings/jsDocs.ts, line 968

object

# GroupManagementPermissions

Properties:
Name Type Description
manageRelationships boolean
manageClan boolean
viewAuditLogs boolean

View Source typings/jsDocs.ts, line 772

object

# GroupMembershipPermissions

Properties:
Name Type Description
changeRank boolean
inviteMembers boolean
removeMembers boolean

View Source typings/jsDocs.ts, line 765

object

# GroupNameResult

Properties:
Name Type Description
newName string

View Source typings/jsDocs.ts, line 898

object

# GroupPostsPermissions

Properties:
Name Type Description
viewWall boolean
postToWall boolean
deleteFromWall boolean
viewStatus boolean
postToStatus boolean

View Source typings/jsDocs.ts, line 756

object

# GroupSearchItem

Properties:
Name Type Description
id number
name string
description string
memberCount number
publicEntryAllowed boolean
created Date
updated Date

View Source typings/jsDocs.ts, line 824

object

# GroupShout

Properties:
Name Type Description
body string
poster GroupUser
created Date
updated Date

View Source typings/jsDocs.ts, line 885

object

# GroupUser

Properties:
Name Type Attributes Description
userId number
username string
displayName string
hasVerifiedBadge boolean <optional>

View Source typings/jsDocs.ts, line 877

object

# GroupView

Properties:
Name Type Description
___VIEWSTATE string
___VIEWSTATEGENERATOR string
___EVENTVALIDATION string
___RequestVerificationToken string

View Source typings/jsDocs.ts, line 869

object

# HttpOptions

Properties:
Name Type Attributes Description
verification string <optional>
jar CookieJar <optional>

View Source typings/jsDocs.ts, line 1417

object

# IGroupPartial

Properties:
Name Type Description
Name string
Id number
EmblemUrl string
MemberCount number
Rank number
Role string
RoleId number
IsPrimary boolean

View Source typings/jsDocs.ts, line 857

object

# Inputs

Properties:
Name Type Description
name: string

string With a provided name, this returns the input's value.

View Source typings/jsDocs.ts, line 1405

object

# Inventory

Properties:
Name Type Description
items Array.<InventoryEntry>

View Source typings/jsDocs.ts, line 1323

object

# InventoryEntry

Properties:
Name Type Attributes Description
assetId number
name string
assetType string
created Date
updated Date <optional>
assetName string <optional>
userAssetId number <optional>
owner AssetOwner <optional>

View Source typings/jsDocs.ts, line 1311

object

# LoggedInUserData

Properties:
Name Type Description
UserID number
UserName string
RobuxBalance number
ThumbnailUrl string
IsAnyBuildersClubMember false
IsPremium boolean

View Source typings/jsDocs.ts, line 1024

object

# NobloxOptions

Properties:
Name Type Description
show_deprecation_warnings boolean

Prints console warnings for functions that are being polyfilled by newer methods due to upstream Roblox API changes

session_only boolean

Minimizes data usage and speed up requests by only saving session cookies, disable if you need other cookies to be saved as well. (Default: true)

max_threads number

This is usually used for functions that have to receive a lot of pages at once. Only this amount will be queued up as to preserve memory, make this as high as possible for fastest responses (although it will be somewhat limited by maxSockets). (Default: 50)

timeout number

Timeout for http requests. This is necessary for functions that make a very large number of requests, where it is possible some simply won't connect. (Default: 10000)

event object
maxRetries number

Maximum number of consecutive retries after an event times out or fails in some other way. (Default: 5)

timeout number

Maximum time (in milliseconds) a request can take. If your server has extremely high latency you may have to raise this. (Default: 10000)

defaultDelay number

The poll time in milliseconds by default. A lower number will detect changes much quicker but will stress the network, a higher one does the opposite. (Default: 10000)

onAuditLog number

The poll time in milliseconds to check for new audit log entries. A lower number will detect changes much quicker but will stress the network, a higher one does the opposite. (Default: 10000)

onWallPost number

The poll time in milliseconds to check for new wall posts. A lower number will detect changes much quicker but will stress the network, a higher one does the opposite. (Default: 10000)

onJoinRequestHandle number

The poll time in milliseconds to check for new join requests. A lower number will detect changes much quicker but will stress the network, a higher one does the opposite. (Default: 10000)

onJoinRequest number

The poll time in milliseconds to check for new join requests. A lower number will detect changes much quicker but will stress the network, a higher one does the opposite. (Default: 10000)

onShout number

The poll time in milliseconds to check for a new shout message. A lower number will detect changes much quicker but will stress the network, a higher one does the opposite. (Default: 10000)

onBlurbChange number

The poll time in milliseconds to check for a new blurb message. A lower number will detect changes much quicker but will stress the network, a higher one does the opposite. (Default: 10000)

onGroupTransaction number

The poll time in milliseconds to check for new transaction log entries. A lower number will detect changes much quicker but will stress the network, a higher one does the opposite. This endpoint has a low rate limit. (Default: 30000)

thumbnail object
maxRetries number

Maximum number of retries to retrieve a pending thumbnail, rare, but occurs with uncached users (Roblox's cache) (Default: 2)

retryDelay number

The time to wait between consecutive retries of retrieving pending thumbnails. (Default: 500)

failedUrl object
failedUrl.pending string

The image URL to provide when an asset thumbnail is still pending; defaults to Roblox moderation icon via noblox.js's GitHub repo at https://noblox.js.org/moderatedThumbnails/moderatedThumbnail_{size}.png

failedUrl.blocked string

The image URL to provide when an asset thumbnail has been moderated by Roblox; defaults to Roblox moderation icon via noblox.js's GitHub repo at https://noblox.js.org/moderatedThumbnails/moderatedThumbnail_{size}.png

queue object
Message object
Message.delay number

Although messages do have a floodcheck, it is not instituted immediately so this is disabled by default. If you are sending a lot of messages set a delay around 10-15 seconds (10000-15000). (Default: 0)

cache object
XCSRF object

XCSRF tokens expire 30 minutes after being created. Until they expire, however, no new tokens can be made. Sometimes an XCSRF token has already been created for the user so the server doesn't know when to collect a new one. During transitions some requests may use invalid tokens. For now, new XCSRF tokens are automatically retrieved when cached ones get rejected.

XCSRF.expire number | boolean

Default: 1800

XCSRF.refresh number | boolean

Default: false

Verify object

Verification tokens seem to last extremely long times.

Verify.expire number | boolean

Default: 7200

Verify.refresh number | boolean

Default: 3600

Roles object

This should be fine unless your group changes its ranks often.

Roles.expire number | boolean

Default: 600

Roles.refresh number | boolean

Default: true

RolesetId object

Disable this completely if you don't plan on ever changing your exile bot's rank.

RolesetId.expire number | boolean

Default: 86400

RolesetId.refresh number | boolean

Default: false

Product object

Disabled by default for security (price checks). If you are only working with ROBLOX assets, however, you can set this to something high (since ROBLOX product info rarely changes).

Product.expire number | boolean

Default: false

Product.refresh number | boolean

Default: false

NameFromID object

Caches a user's username based on their ID. It is not on by default because it is an uncontrollable change but the option is there to cache it if you would like.

NameFromID.expire number | boolean

Default: false

NameFromID.refresh number | boolean

Default: false

IDFromName object

Permanent cache for a user's ID based on their name. There is no reason this would ever change (changing names would re-match it and old names cannot be reused by other accounts). Only disable if you want this to match current names only.

IDFromName.expire number | boolean

Default: true

IDFromName.refresh number | boolean

Default: false

SenderId object

Permanent cache for the sender's user ID. This should literally never change.

SenderId.expire number | boolean

Default: true

SenderId.refresh number | boolean

Default: false

Rank object

Caches rank by user ID. Changes cannot be anticipated so this is not enabled by default.

Rank.expire number | boolean

Default: false

Rank.refresh number | boolean

Default: false

View Source typings/jsDocs.ts, line 11

object

# NotificationMessage

Properties:
Name Type Description
type string
{...} any

View Source typings/jsDocs.ts, line 1160

object

# OnUserTypingChatEvent

Properties:
Name Type Description
UserId number
ConversationId number
IsTyping boolean

View Source typings/jsDocs.ts, line 516

object

# PartyData

Properties:
Name Type Description
PartyId number
PartyType string

View Source typings/jsDocs.ts, line 1005

object

# PlaceInformation

Properties:
Name Type Description
placeId number
name string
sourceName string
sourceDescription string
url string
builder string
builderId number
hasVerifiedBadge boolean
isPlayable boolean
reasonProhibited string
universeId number
universeRootPlaceId number
price number
imageToken string

View Source typings/jsDocs.ts, line 577

"Computer" | "Phone" | "Tablet" | "Console"

# PlayableDevices

View Source typings/jsDocs.ts, line 662

"R6" | "R15"

# PlayerAvatarType

View Source typings/jsDocs.ts, line 297

object

# PlayerBadges

Properties:
Name Type Attributes Description
id number
name string
description string <optional>
displayName string
displayDescription string <optional>
enabled boolean
iconImageId number
displayIconImageId number
awarder BadgeAwarder
statistics BadgeStatistics
created Date
updated Date

View Source typings/jsDocs.ts, line 1255

object

# PlayerInfo

Properties:
Name Type Attributes Description
username string
displayName string
blurb string
joinDate Date
age number <optional>
friendCount number <optional>
followerCount number <optional>
followingCount number <optional>
oldNames Array.<string> <optional>
isBanned boolean

View Source typings/jsDocs.ts, line 1182

object

# PlayerThumbnailData

Properties:
Name Type Description
targetId number
state string
imageUrl string

View Source typings/jsDocs.ts, line 1212

object

# Presences

Properties:
Name Type Description
userPresences Array.<UserPresence>

View Source typings/jsDocs.ts, line 1207

object

# PriceRange

Properties:
Name Type Description
high number
low number

View Source typings/jsDocs.ts, line 118

object

# PrivateMessage

Properties:
Name Type Description
id number
sender UserEntry
recipient UserEntry
subject string
body string
created Date
updated Date
isRead boolean
isSystemMessage boolean
isReportAbuseDisplayed boolean
parent PrivateMessageParent

View Source typings/jsDocs.ts, line 1145

object

# PrivateMessageParent

Properties:
Name Type Description
page number

View Source typings/jsDocs.ts, line 1140

0 | 1 | 3

# PrivateMessageTab

0 = Inbox 1 = Sent Messages 3 = Archived Messages

View Source typings/jsDocs.ts, line 1011

object

# PrivateMessagesPage

Properties:
Name Type Description
collection Array.<PrivateMessage>
totalPages number
totalCollectionSize number
pageNumber number

View Source typings/jsDocs.ts, line 1120

object

# ProductInfo

Properties:
Name Type Attributes Description
TargetId number
ProductType string <optional>
AssetId number
ProductId number
Name string
Description string
AssetTypeId number
Creator ProductInfoCreator
IconImageAssetId number
Created Date
Updated Date
PriceInRobux number <optional>
PriceInTickets number <optional>
Sales number
IsNew boolean
IsForSale boolean
IsPublicDomain boolean
IsLimited boolean
IsLimitedUnique boolean
Remaining number <optional>
MinimumMembershipLevel number
ContentRatingTypeId number
SaleAvailabilityLocations Array <optional>
SaleLocation string <optional>
CollectibleItemId number <optional>

View Source typings/jsDocs.ts, line 79

object

# ProductInfoCreator

Properties:
Name Type Description
Id number
Name string
HasVerifiedBadge boolean

View Source typings/jsDocs.ts, line 72

object

# PromotionChannelsResponse

Properties:
Name Type Attributes Description
facebook string <optional>
twitter string <optional>
youtube string <optional>
twitch string <optional>
guilded string <optional>

View Source typings/jsDocs.ts, line 1219

"All" | "Clothing" | "BodyParts" | "AvatarAnimations" | "Accessories" | "Outfits" | "Gear"

# RecentItemListType

View Source typings/jsDocs.ts, line 311

"Asset" | "Outfit"

# RecentItemType

View Source typings/jsDocs.ts, line 315

"Unknown" | "China"

# Regions

View Source typings/jsDocs.ts, line 666

object

# RejectedParticipant

Properties:
Name Type Description
rejectedReason string
type string
targetId number
name string
displayName string

View Source typings/jsDocs.ts, line 358

object

# ResaleDataResponse

Properties:
Name Type Attributes Description
assetStock number <optional>
sales number <optional>
numberRemaining number <optional>
recentAveragePrice number <optional>
originalPrice number <optional>
priceDataPoints Array <optional>
volumeDataPoints Array <optional>

View Source typings/jsDocs.ts, line 136

object

# ResellerAgent

Properties:
Name Type Description
id number
type "User" | "Group"
name string

View Source typings/jsDocs.ts, line 147

object

# ResellerData

Properties:
Name Type Attributes Description
userAssetId number
seller ResellerAgent
price number
serialNumber number <optional>

View Source typings/jsDocs.ts, line 154

object

# RevenueSummaryResponse

Properties:
Name Type Attributes Description
recurringRobuxStipend number <optional>
itemSaleRobux number <optional>
purchasedRobux number <optional>
tradeSystemRobux number <optional>
pendingRobux number <optional>
groupPayoutRobux number <optional>
individualToGroupRobux number <optional>
premiumPayouts number <optional>
groupPremiumPayouts number <optional>
adjustmentRobux number <optional>

View Source typings/jsDocs.ts, line 975

object

# Role

Properties:
Name Type Attributes Description
name string
memberCount number <optional>
rank number
id number

View Source typings/jsDocs.ts, line 739

object

# RolePermissions

Properties:
Name Type Description
groupId number
role RoleWithDescription
permissions RolePermissionsBody

View Source typings/jsDocs.ts, line 798

object

# RolePermissionsBody

Properties:
Name Type Description
groupPostsPermissions GroupPostsPermissions
groupMembershipPermissions GroupMembershipPermissions
groupManagementPermissions GroupManagementPermissions
groupEconomyPermissions GroupEconomyPermissions

View Source typings/jsDocs.ts, line 790

object

# RoleWithDescription

Properties:
Name Type Attributes Description
name string
memberCount number <optional>
rank number
id number
description string

View Source typings/jsDocs.ts, line 747

# SelectorFunction(selector)

Parameters:
Name Type Description
selector string

View Source typings/jsDocs.ts, line 1398

object

# SendChatResponse

Properties:
Name Type Description
content string
filteredForReceivers boolean
messageId string
sent string
messageType string
resultType string
statusMessage string

View Source typings/jsDocs.ts, line 390

object

# SendTradeResponse

Properties:
Name Type Description
id number

View Source typings/jsDocs.ts, line 1393

object

# SocialLinkResponse

Properties:
Name Type Description
id number
type 'Facebook' | 'Twitter' | 'YouTube' | 'Twitch' | 'GooglePlus' | 'Discord' | 'RobloxGroup' | 'Amazon'
url string
title string

View Source typings/jsDocs.ts, line 608

object

# StartGroupConversationResponse

Properties:
Name Type Description
conversation ChatConversation
rejectedParticipants Array.<RejectedParticipant>
resultType string
statusMessage string

View Source typings/jsDocs.ts, line 406

object

# ThumbnailData

Properties:
Name Type Attributes Description
requestId string <optional>
errorCode number
errorMessage string
targetId number
state "Completed" | "Pending" | "Blocked"
imageUrl string <optional>

View Source typings/jsDocs.ts, line 174

object

# ThumbnailRequest

Properties:
Name Type Attributes Description
requestId string <optional>
targetId number <optional>
token string <optional>
alias string <optional>
type 'Avatar' | 'AvatarHeadShot' | 'GameIcon' | 'BadgeIcon' | 'GameThumbnail' | 'GamePass' | 'Asset' | 'BundleThumbnail' | 'Outfit' | 'GroupIcon' | 'DeveloperProduct' | 'AutoGeneratedAsset' | 'AvatarBust' | 'PlaceIcon' | 'AutoGeneratedGameIcon' | 'ForceAutoGeneratedGameIcon'
size string
format 'png' | 'jpeg' <optional>
isCircular boolean <optional>

View Source typings/jsDocs.ts, line 162

object

# TradeAsset

Properties:
Name Type Attributes Description
id number
user TradeUser
created Date
expiration Date <optional>
isActive boolean
status string

View Source typings/jsDocs.ts, line 1347

object

# TradeInfo

Properties:
Name Type Attributes Description
offers Array.<DetailedTradeOffer>
id number
user TradeUser
created Date
expiration Date <optional>
isActive boolean
status string

View Source typings/jsDocs.ts, line 1382

object

# TradeOffer

Properties:
Name Type Description
userAssetIds Array.<number>
robux number

View Source typings/jsDocs.ts, line 1376

object

# TradeUser

Properties:
Name Type Description
userId number
username string
displayName string

View Source typings/jsDocs.ts, line 1340

object

# TransactionAgent

Properties:
Name Type Description
id number
type string
name string

View Source typings/jsDocs.ts, line 924

object

# TransactionCurrency

Properties:
Name Type Description
amount number
type string

View Source typings/jsDocs.ts, line 938

object

# TransactionDetails

Properties:
Name Type Description
id number
name string
type string

View Source typings/jsDocs.ts, line 931

object

# TransactionItem

Properties:
Name Type Attributes Description
id number
transactionType string <optional>
created Date
isPending boolean
agent TransactionAgent
details TransactionDetails <optional>
currency TransactionCurrency

View Source typings/jsDocs.ts, line 944

object

# UAIDResponse

Properties:
Name Type Description
uaids Array.<number>
failedIds Array.<number>

View Source typings/jsDocs.ts, line 1328

object

# UniverseAsset

Properties:
Name Type Description
assetID number
assetTypeID number
isPlayerChoice boolean

View Source typings/jsDocs.ts, line 655

object

# UniverseCreator

Properties:
Name Type Description
id number
name string
type string
isRNVAccount boolean

View Source typings/jsDocs.ts, line 543

object

# UniverseInformation

Properties:
Name Type Description
id number
rootPlaceId number
name string
description string
creator UniverseCreator
price number
allowedGearGenres Array.<string>
allowedGearCategories Array.<string>
isGenreEnforced boolean
copyingAllowed boolean
playing number
visits number
maxPlayers number
created Date
updated Date
studioAccessToApisAllowed boolean
createVipServersAllowed boolean
universeAvatarType "MorphToR6" | "PlayerChoice" | "MorphToR15"
genre "All" | "Tutorial" | "Scary" | "TownAndCity" | "War" | "Funny" | "Fantasy" | "Adventure" | "SciFi" | "Pirate" | "FPS" | "RPG" | "Sports" | "Ninja" | "WildWest"
isAllGenre boolean
isFavoritedByUser boolean
favoritedCount number

View Source typings/jsDocs.ts, line 551

object

# UniversePermissions

Properties:
Name Type Attributes Description
IsThirdPartyTeleportAllowed boolean <optional>
IsThirdPartyAssetAllowed boolean <optional>
IsThirdPartyPurchaseAllowed boolean <optional>

View Source typings/jsDocs.ts, line 648

object

# UniverseSettings

Properties:
Name Type Attributes Description
allowPrivateServers boolean <optional>
privateServerPrice number <optional>
name string <optional>
description string <optional>
universeAvatarType "MorphToR6" | "MorphToR15" | "PlayerChoice" <optional>
universeAnimationType "Standard" | "PlayerChoice" <optional>
universeCollisionType "InnerBox" | "OuterBox" <optional>
universeJointPositioningType "Standard" | "ArtistIntent" <optional>
isArchived boolean <optional>
isFriendsOnly boolean <optional>
genre "All" | "Tutorial" | "Scary" | "TownAndCity" | "War" | "Funny" | "Fantasy" | "Adventure" | "SciFi" | "Pirate" | "FPS" | "RPG" | "Sports" | "Ninja" | "WildWest" <optional>
playableDevices Array.<PlayableDevices> <optional>

Computer, Phone, Tablet, Console

universeAvatarAssetOverrides Array.<UniverseAsset> <optional>
isForSale boolean <optional>
price number <optional>
universeAvatarMinScales AvatarScale <optional>
universeAvatarMaxScales AvatarScale <optional>
studioAccessToApisAllowed boolean <optional>
permissions UniversePermissions <optional>
optInRegions Array.<Regions> <optional>

Unknown, China

View Source typings/jsDocs.ts, line 670

object

# UpdateTypingResponse

Properties:
Name Type Description
statusMessage string

View Source typings/jsDocs.ts, line 401

object

# UpdateUniverseResponse

Properties:
Name Type Attributes Description
allowPrivateServers boolean <optional>
privateServerPrice number <optional>
id number
name string <optional>
description string <optional>
universeAvatarType "MorphToR6" | "MorphToR15" | "PlayerChoice" <optional>
universeAnimationType "Standard" | "PlayerChoice" <optional>
universeCollisionType "InnerBox" | "OuterBox" <optional>
universeJointPositioningType "Standard" | "ArtistIntent" <optional>
isArchived boolean <optional>
isFriendsOnly boolean <optional>
genre "All" | "Tutorial" | "Scary" | "TownAndCity" | "War" | "Funny" | "Fantasy" | "Adventure" | "SciFi" | "Pirate" | "FPS" | "RPG" | "Sports" | "Ninja" | "WildWest" <optional>
playableDevices Array.<PlayableDevices> <optional>

Computer, Phone, Tablet, Console

universeAvatarAssetOverrides Array.<UniverseAsset> <optional>
isForSale boolean <optional>
price number <optional>
universeAvatarMinScales AvatarScale <optional>
universeAvatarMaxScales AvatarScale <optional>
studioAccessToApisAllowed boolean <optional>
permissions UniversePermissions <optional>
optInRegions Array.<Regions> <optional>

Unknown, China

View Source typings/jsDocs.ts, line 694

11 | 12 | 13

# UploadItemAssetType

View Source typings/jsDocs.ts, line 68

object

# UploadItemResponse

Properties:
Name Type Description
id number

View Source typings/jsDocs.ts, line 184

object

# UploadModelItemOptions

Properties:
Name Type Attributes Description
name string
description string <optional>
copyLocked boolean <optional>
allowComments boolean <optional>
groupId number <optional>

View Source typings/jsDocs.ts, line 195

object

# UploadModelResponse

Properties:
Name Type Description
AssetId number
AssetVersionId number

View Source typings/jsDocs.ts, line 189

object

# UserBadgeStats

Properties:
Name Type Description
badgeId number
awardedDate Date

View Source typings/jsDocs.ts, line 1235

object

# UserEntry

Properties:
Name Type Description
userId number
name string
displayName string

View Source typings/jsDocs.ts, line 1128

object

# UserInfo

Properties:
Name Type Description
description string
created Date
isBanned boolean
hasVerifiedBadge boolean
id number
name string
displayName string

View Source typings/jsDocs.ts, line 1196

object

# UserLoginApiData

Properties:
Name Type Description
userId number

View Source typings/jsDocs.ts, line 1041

object

# UserPresence

Properties:
Name Type Attributes Description
userPresenceType UserPresenceType <optional>
lastLocation string <optional>
placeId number <optional>
rootPlaceId number <optional>
gameId string <optional>
universeId number <optional>
userId number <optional>
lastOnline string <optional>

View Source typings/jsDocs.ts, line 1170

0 | 1 | 2 | 3

# UserPresenceType

0 = Offline 1 = Online 2 = InGame 3 = Studio

View Source typings/jsDocs.ts, line 1017

object

# UserStatus

Properties:
Name Type Description
online boolean
lastSeen Date

View Source typings/jsDocs.ts, line 1052

object

# UsernameHistoryEntry

Properties:
Name Type Description
name string

View Source typings/jsDocs.ts, line 1135

object

# WallPost

Properties:
Name Type Description
id number
poster GroupUser
body string
created Date
updated Date

View Source typings/jsDocs.ts, line 989

object

# WallPostPage

Properties:
Name Type Attributes Description
previousPageCursor string <optional>
nextPageCursor string <optional>
data Array.<WallPost>

View Source typings/jsDocs.ts, line 998

object

# WearableAssetType

Properties:
Name Type Description
maxNumber number
id number
name string

View Source typings/jsDocs.ts, line 225

# getLatest(latest, event)

Parameters:
Name Type Description
latest number

A value representing the latest version.

event EventEmitter

The event emitter to emit to.

View Source lib/util/shortPoll.js, line 13