BGG XML API
You can access some information from the geek via the BoardGameGeek XML API. Each base URI is described and the various parameters are listed. The parameters and their values are URL-encoded in the standard manner. There are some examples at the end. The resultant output XML is not described here, but XML is "self-describing" right? The output should be quite clear from simple inspection.
For all of the parameters mentioned below, the first parameter you list follows a ? (question mark), and each subsequent parameter follows an & (ampersand).
Related wikis: Data Mining, and BGG XML API2
Note: BGG throttles the requests now, which is to say that if you send requests too frequently, the server will give you 500 or 503 return codes, reporting that it is too busy. Currently, a 5-second wait between requests seems to suffice.
Search for games by name and by AKAs
- search: String to search for (required)
- exact: Exact name/aka search only (set it to 1, absent by default) [exact doesn't seem to work yet in BGG 2.0]
Retrieve information about a particular game or games
Retrieve games in a user's collection
Retrieve games in a user's collection. Important definition: A user's collection includes any games the user has added to her collection on BGG. This includes games she owns, games she used to own, games she's rated, games upon which she's commented, games she's played, and games on her wishlist, just to name a few. In this section, references to the collection mean this broader sense of BGG collection, not the user's personal stash of games.
The XMLAPI will place collection requests that are received into a queue to be processed by backend servers. When this happens, the request will result in an HTTP response of 202 to indicate the request has been queued and is pending processing. These collection requests will result in an HTTP response of 200 along with the XML data once the server has the data available (See Export collections has been updated (XMLAPI developers read this) for details).
- Example: http://www.boardgamegeek.com/xmlapi/collection/eekspider
- Filters: (You can use any combination of the below)
- own: In (or exclude for 0) a user's collection. That is, the user currently owns it. Collections include games that
- comment: include (or exclude) games with comments
- trade: games listed for trade
- wishlistpriority: (a number from 1 to 5)
- minrating: minimum and maximum user rating
- minbggrating: minimum and maximum bgg rating
- minplays: minumum and maximum number of recorded plays
- Other parameters:
- showprivate: Show the private fields (purchase price, etc). Default is 1 for logged in users, 0 otherwise, and showprivate=1 only works on your own collection, when you are logged in.
Retrieve the messages from a forum/game thread
- Example: http://www.boardgamegeek.com/xmlapi/thread/381021 [Note: Your browser may interpret this as a request to subscribe to an RSS feed.]
- start: Start article (default = 0)
- count: Number of articles (default and max = 100)
- username: Username to filter for
Retrieve entries from a geeklist
Note: the old "start" and "count" parameters are obsolete and no longer supported. They were required in the original api if you wanted to retreive all items on a geeklist longer than 150 items as that's the most that could be returned on a single api call. Currently however the geeklist xml api returns the entire geeklist (all items) in a single call.
Known XML API Users
- OLWLG - "On-Line Want List (editor &) Generator" Math Trade Tool Set
- Historical Marketplace Sales Data
- minibgg.com - BGG for mobile browsers
- Miss the correlation tool? Check here!
- zefquaavius' math trade tools, high-correlation geekbuddy maintenance tools, Morse Hotness tools, and sundry other utilities.
- Generate a PDF with all your games
- Friendless's BGG Extended Stats - Thread here.
- BGG2nanDECK software for trasforming XML info in CSV files (for nanDECK): tutorial and features.
- BoardGameGeek application for Android
- monteslu's Mobile BoardGameGeek site for Android, iPhone, iPod Touch, iPad, etc.
- monteslu's rating charts and user ratings deviance
- justmarks's MobileBGG application for Windows Phone 7
- Finchley Games Club use the API to display members' games collections.
- Mini-Geek One more site for forum browsing on mobile devices (IOS and Android)
- What is your collection or friends collection worth?
- B.G.Jeeves is an Android app used to tracking your collection and recording plays. (It only uses "get" requests from the API, nothing gets pushed back right now, but that may come later.
- Dazeysan's bookmarklet for SPLU (Splendiferous Play-Logging Utility) - Allows users to log plays faster by providing clickable player names, concomitant expansion logging, and a different GUI.
- CaptainJax's BGG Last Plays Windows Phone app for keeping track of when you last played the games you own: New BGG-Related Windows Phone App