manacube
v1.2.24
Published
A typescript npm packages to interact with the mana api
Downloads
284
Maintainers
Readme
:dart: About
This project is a npm wrapper to integrate with the manacube api (https://api.manacube.com/)
:sparkles: Features
:heavy_check_mark: Api Client;
:heavy_check_mark: Typescript;\
:rocket: Technologies
The following tools were used in this project:
:white_check_mark: Requirements
Before starting :checkered_flag:, you need to have Node installed.
:checkered_flag: Starting
# Install the project
$ npm i manacube
# import / declare client
const manacubeApi = require("manacube")
let manacubeClient = new manacubeApi.ManaCubeApi()
# Run the project
you can now use the client and the function to interact with the manacube api
Functions
Declaring Client
// Declare api instance
// Has to options baseUrl and disableSafeUUIDCheck. BaseUrl changes the default api url
// disableSafeUUIDCheck will not run any checks against any UUID imputed into the api.
let manacubeClient = new manacubeApi.ManaCubeApi();
let manacubeClient = new manacubeApi.ManaCubeApi('https://api.manacube.com/api/', true); // Disables UUID CHECKSReforms UUID to the correct formatting for the api or returns Invalid UUID if UUID isn't the valid minecraft format.
manacubeClient.safeUUIDCheck('f91c3347-4be2-48f2-be73-9a4323f08497'); //return f91c3347-4be2-48f2-be73-9a4323f08497
manacubeClient.safeUUIDCheck('f91c3347-4be248f2be73-9a4323f08497'); //return f91c3347-4be2-48f2-be73-9a4323f08497
manacubeClient.safeUUIDCheck('f91c33474be248f2be739a4323f08497'); //return f91c3347-4be2-48f2-be73-9a4323f08497
manacubeClient.safeUUIDCheck('f91c33474be248323f08497'); //return Invalid UUIDGet Users sva's
@param uuid MCC UUID
@param gamemode gamemode to get stats for
@returns A single users svas
manacubeClient.getUserSvas(uuid, gamemode);Get gamemode sva's
@param gamemode Gamemode to get stats for
@returns Get all SVAs that a player owns on a specific gamemode
manacubeClient.getAllGamemodeSvas(gamemode)Get Patrons list of patrons and patron+
@returns List of patrons uuids
manacubeClient.getAllPatrons()Gets a list of all Patrons
@returns List of patrons uuids
manacubeClient.getPatrons()Get a list of all patron+
@returns List of patrons uuids
manacubeClient.getPatronPlus()Get player levels
@param uuid UUID of player to get stats for
@returns Get a single players stats
manacubeClient.getPlayerLevels(uuid)
Get Top Guilds
@param total Total amount of guilds to get
@returns Get a list of x guilds stats
manacubeClient.getTopGuilds(total)Get players guilds
@param uuid UUID of player to get stats for
@returns Get a single players stats
manacubeClient.getPlayerGuild(uuid)Get Users Friends List
@param uuid UUID of player to get stats for
@returns Get a single players friend list
manacubeClient.getUserFriends(uuid)Gets Factions Placeholders
@param season Factions Season payouts to get stats for
@returns Get a list of factions season payouts
manacubeClient.getFactionsSeasonPayouts(season)Get factions Grace Placeholders
@param placeholder placeholder
@returns placeholder
getGracePlaceholder(placeholder)
Get Players cubit balance
@param uuid UUID of player to get stats for
@returns Get a single players cubit stats
getPlayersCubitBalance(uuid)Auctions
All three auction endpoints return an auctionPage:
{ lastUpdated, auctions: auctionItem[], full, finalized }.
Pages are 1-indexed (page 0 is rejected). The API declares page/totalPages/
totalAuctions but marks them writeOnly and never sends them, so there is no page count —
follow full instead: a full page means another page may follow.
A page past the end comes back as a 200 with an empty body, which is normalised into an empty
page (auctions: []). The API also returns an empty body intermittently for pages that do have
data, so retry an empty page before treating it as the end of the data.
Get a page of active auctions
@param gamemode Gamemode to get auctions for
@param page Page number, starting at 1
@returns A page of currently active auctions
manacubeClient.getActiveAuctions(gamemode, page)Get a page of recently ended auctions
@param gamemode Gamemode to get auctions for
@param page Page number, starting at 1
@returns A page of recently ended auctions
manacubeClient.getRecentlyEndedAuctions(gamemode, page)Note this is a short rolling window of the most recently ended auctions, not an archive — poll it regularly if you want history.
Get a page of a player's auctions
@param uuid UUID of the player
@param gamemode Gamemode to get auctions for
@param page Page number, starting at 1
@returns A page of auctions created by that player, ordered by creation date
manacubeClient.getPlayerAuctions(uuid, gamemode, page)Collect every page in one call
@param gamemode Gamemode to get auctions for
@param maxPages Safety stop, defaults to 50
@returns Every auction across all pages
manacubeClient.getAllActiveAuctions(gamemode, maxPages)
manacubeClient.getAllPlayerAuctions(uuid, gamemode, maxPages):memo: License
This project is under license from MIT. For more details, see the LICENSE file.
Made with :heart: by nick22985
Back to top
