Welcome to Buxville.net! Log in or Sign up to interact with the Buxville community.

BuxAPI

BuxAPI
Buxville has its own API, using XML-RPC. Any player with a good idea can receive a private API key, and can then write an application or interface, which can pull data directly from Buxville's database.

(Bux 3.0) XML-RPC URL: http://www.buxville.net/buxapi3/buxapi.php

(Bux 2.0) XML-RPC URL: http://www.buxville.net/buxapi2/buxapi.php

Note by a player: with the new anti-ddos system you need to wait about 200 microseconds between every api-call
easiest way to do so in PHP: usleep(200) (less if you need to do a lot of other stuff between every call)
need (a lot) bigger sleeptime if you make 20+ calls in a row; current testing: around 80000microseconds ==> usleep(80000)
important: make sure you try it, because your api key gets shown in the error message >.<


Available Methods(top)



Player(top)




Name: "player.money"
Arguments: array ("API Key", "PlayerName")
Returns: PlayerName's Bux balance, -1 if PlayerName doesn't exist.

Name: "player.moneybanked"
Arguments: array ("API Key", "PlayerName")
Returns: PlayerName's Banked Bux balance, -1 if PlayerName doesn't have a bank account.

Name: "player.ether"
Arguments: array ("API Key", "PlayerName")
Returns: PlayerName's Ether amount, -1 if PlayerName doesn't have Ether yet.

Name: "player.groups"
Arguments: array ("API Key", "PlayerName")
Returns: array ( groups )

Name: "player.seen"
Arguments: array ("API Key", "PlayerName")
Returns: Unix Timestamp of Last Seen of PlayerName, -1 if PlayerName doesn't exist or was never seen, 0 if PlayerName is online

Name: "player.Vacation"
Arguments: array ("API Key", "PlayerName")
Returns: 1 if PlayerName is on Vacation, 0 otherwise.

Name: "player.shopquests"
Arguments: array ("API Key", "PlayerName")
Returns: Amount of Shop Quests player has completed.

Name: "player.vacationlist"
Arguments: array ("API Key")
Returns: array ( name )

Name: "player.goblin"
Arguments: array ("API Key", "PlayerName")
Returns: PlayerName's Goblin's name.

Name: "player.town"
Arguments: array ("API Key", "PlayerName")
Returns: PlayerName's town, 0 if PlayerName isn't in a town.

Name: "player.vote"
Arguments: array ("API Key", "PlayerName")
Returns: integer secondsLeft
Currently not working/Disabled/Changed name without wiki update

Name: "player.list"
Arguments: array ("API Key", "Days")
Returns: array ( name ) [List of players with /seen under X "Days"]

Name: "player.stats"
Arguments: array ("API Key", "PlayerName")
Returns: array (health, remainingAir, foodLevel, exhaustion, saturation, level, totalExperience, joins, quits, kicks, deaths, totalPlayersKilled, totalMobsKilled, totalBlocksBroken, totalBlocksPlaced, totalDistanceTraveled, totalItemsDropped, totalItemsPickedUp, totalItemsCrafted, timesSlept, arrowsShot, fishCaught, chatMessages, portalsCrossed, waterBucketsFilled, waterBucketsEmptied, lavaBucketsFilled, lavaBucketsEmptied, cowsMilked, mooshroomsMilked, mooshroomsSheared, sheepSheared, sheepDyed, lifetimeExperience, itemsEnchanted, itemEnchantmentLevels, sessionTime, totalTime)

Name: "player.mcmmo"
Arguments: array ("API Key", "PlayerName")
Returns: array ( name, excavation, fishing, herbalism, mining, woodcutting, axes, archery, swords, taming, unarmed, acrobatics, repairs )

Name: "player.interest"
Arguments: array ("API Key", "PlayerName")
Returns: Amount of Banking Interest due for this player.

Name: "player.totalinterest"
Arguments: array ("API Key", "PlayerName")
Returns: Amount of total Banking Interest collected by this player.

Money(top)




Name: "money.list"
Arguments: array ("API Key", "TopX")
Returns: array ( array (rank, name, balance) )

Name: "money.received"
Arguments: array ("API Key", "PlayerName", "Minimum Timestamp (0 is fine for full history)")
Returns: array ( array (from, amount, timestamp) )

Name: "money.sent"
Arguments: array ("API Key", "PlayerName", "Minimum Timestamp (0 is fine for full history)")
Returns: array ( array (to, amount, timestamp) )

Name: "money.total"
Arguments: array ("API Key")
Returns: array ( totalBux )

Name: "money.utilities"
Arguments: array ("API Key")
Returns: array ( array (name, amount) )

SignShop Log(top)




Name: "signshoplog.customer"
Arguments: array ("API Key", "CustomerName", "Limit") [Limit = limit amount of results to X latest, negative = all]
Returns: array ( array (timestamp, owner, customer, operation, item, amount) )

Name: "signshoplog.owner"
Arguments: array ("API Key", "OwnerName", "Limit") [Limit = limit amount of results to X latest, negative = all]
Returns: array ( array (timestamp, owner, customer, operation, item, amount) )

Name: "signshoplog.item"
Arguments: array ("API Key", "Item", "Limit") [Limit = limit amount of results to X latest, negative = all]
Returns: array ( array (timestamp, owner, customer, operation, item, amount) )

Name: "signshoplog.all"
Arguments: array ("API Key", "Timestamp") [Timestamp = minimum Unix timestamp in miliseconds]
Returns: array ( array (timestamp, owner, customer, operation, item, amount) )

Region(top)




Name: "region.list"
Arguments: array ("API Key")
Returns: array ( zonenames )

Name: "region.coords"
Arguments: array ("API Key", "ZoneName")
Returns: array ( x1, y1, z1, x2, y2, z2 )

Name: "region.flags"
Arguments: array ("API Key", "ZoneName")
Returns: array ( flags )

Name: "region.owners"
Arguments: array ("API Key", "ZoneName")
Returns: array ( owners )

Name: "region.members"
Arguments: array ("API Key", "ZoneName")
Returns: array ( members )

Stock Market(top)




Name: "stock.ids"
Arguments: array ("API Key")
Returns: array ( array (id, name) )

Name: "stock.owned"
Arguments: array ("API Key")
Returns: array ( array (player, stockname, paid, amount) )

Name: "stock.stats" (currently DISABLED)
Arguments: array ("API Key")
Returns: array ( array (playername, profit) )

General(top)




Name: "general.townplayers"
Arguments: array ("API Key", "TownName")
Returns: array ( array (user, town, mayor, deputy, rank, balance) )

Name: "general.npclist"
Arguments: array ("API Key")
Returns: array ( array (Npc ID, name, world, xcoord, ycoord, zcoord) )

Name: "general.etherlevels"
Arguments: array ("API Key")
Returns: array ( array (level, min, max) )
Note: There is a bug in Ether, the API shows it correctly. On each Ether border, you wont have a valid Ether if you're exactly at said amount (e.g. Ether 1 is max 999, Ether 2 starts at 1001).

Name: "general.mcmmo"
Arguments: array ("API Key")
Returns: array ( array (name, excavation, fishing, herbalism, mining, woodcutting, axes, archery, swords, taming, unarmed, acrobatics, repairs) )

Name: "general.shop"
Arguments: array ("API Key", "Type")
Returns: array ( array (itemid, itemname) )
Types: 0 = Quest items, 1 = Shop Quest items (a subset of 0), 2 = Alchemy Ins, 3 = Alchemy Outs.
Note that the "itemid" is not the MC id (wool = 35), but a unique Bux word ID for the item (whitewool).

Name: "general.npcdialog"
Arguments: array ("API Key", "Npc ID")
Returns: array ( dialogLine )

Name: "general.Towns"
Arguments: array ("API Key")
Returns: array ( array (name, info, rank, overcap, fullname, currency, channel) )

Name: "general.news"
Arguments: array ("API Key", "Number of posts (starting at the last)")
Returns: array ( array (timestamp, text, url) )

Name: "general.onlineplayers"
Arguments: array ("API Key")
Returns: array ( name )

Name: "general.Stargates"
Arguments: array ("API Key", "World ID") [Currently only "world" is supported]
Returns: array ( array (name, xcoord, ycoord, zcoord, network, owner, world ID) )

Name: "general.Lots"
Arguments: array ("API Key")
Returns: array ( array (lot, class, owner, quality, hostile mob, protecting mob) )

Name: "general.questables"
Arguments: array ("API Key")
Returns: array ( itemname)

Name: "general.queue"
Arguments: array ("API Key")
Returns: array ( array (playername, eligible, entered) )
- Playername (name of player!)
- Eligible (-1 = in queue, waiting, any other value is "timestamp user became eligible")
- Entered (timestamp user entered queue)


Suggestions(top)

Feature suggestions: here
May 19, 2013