Battle of the Bits offers a fully public API. Please do not abuse; request throttling and/or api access tokens might be implemented in the future. Please enjoy. '[#[Basic Syntax] '[t[mono]battleofthebits.com/api/v1/{object_type}/{command}(/{param0}(/{param1}(/{param2(..))))'[/t] Current object types : botbr, entry, battle, format '[#[Commands] '[t[b3]load'[/t] '[t[mono]battleofthebits.com/api/v1/{object_type}/load/{object_id}'[/t] '[t[b3]list'[/t] '[t[mono]battleofthebits.com/api/v1/{object_type}/list(/{page_number=0}(/{page_length=25}))'[/t] Lists can be sorted by property values by using the GET method '[t[mono]?sort={object_property}&desc=true'[/t] The '[t[mono]desc'[/t] variable is optional; defaults to ascending. Filters can be applied using the GET method. '[t[mono]?filters={defined_filters}'[/t] Filters are defined by pairing a key and value with '[t[mono]~'[/t]. Multiple filters can be defined by using '[t[mono]^'[/t] for separation. (example: '[t[mono]/api/v1/botbr/list/?filters=level~17^class~chipist'[/t]) *this may be deprecated in future versions Conditionals can be applied using the POST method. The API expects an array of objects in JSON format. These are much more versatile than the Filters using GET. '[t[mono]"conditions": [ { "property": "title", "operator": "LIKE", "operand": "%ass%" }, { "property": "score_favs", "operator": ">", "operand": "40" }, { "property": "format_token", "operator": "like", "operand": "%mod%" }, { "property": "yt", "operator": "is", "operand": "NULL" } ]'[/t] Pagination is optional. The '[t[mono]page_number'[/t] is zero based and the default '[t[mono]page_length'[/t] is 25 objects. The maximum number of objects that can be pulled in a single call is 250. '[#[Response Formats] The BotB API v1 default response format is a JSON object. XML is also available by either setting the format via GET '[t[mono]?format=xml'[/t] or adding the '[t[mono].xml'[/t] extension to the URI.