Resources
Temples / Paragons
Temples and Paragons are an amazing feature to help get to higher rounds!
Temples refer to an upgraded Super Monkey. More specifically with the ability path of 4-X-X or 5-X-X. Temples sacrifice all the non-hero towers in range to contribute to its power. Temples have different sacrifice levels that increase its power with a higher sacrifice level. To view and understand how Temples are created/calculated visit the informative Temple Popology page on Reddit!
Paragon towers refer to Monkeys that have an ability path of 5-5-5. For example, Dart Monkey has a Paragon tower called Apex Plasma Master. A Paragon upgrade becomes available when all three tier 5s (5-X-X & X-5-X & X-X-5) of a tower are on the map at once. Paragons have different Degrees that contribute power to the tower. To view and understand how Paragons are created/calculated visit the informative Paragon Popology page on Reddit!
Keybind Helper
Below is a useful visual representation of the default in-game keybinds. Click the button below to switch between keyboard keys and icons. Click on the image to view the full image.
Created by u/benny0629
GraphQL API
Documentation
Expand below to get information on the GraphQL API endpoint located at:
https://bloons.gg/api/graphqlQueries and Objects
Queries
All GraphQL API queries are used to get information on Monkeys or Heroes.
POST
monkeys
Gets all monkeys.
SCHEMA DEFINITION
graphql
type Query { monkeys: [Monkey]! }
QUERY EXAMPLE
QUERY
graphql
query monkeys { monkeys { id name type description cost_gold filename abilities { id active upgrade_path upgrade_tier name description cost_gold cost_xp modifiers pros cons } tier { id tier } ability_tiers { id tier top_path middle_path bottom_path pros cons } stats { tower_stats_id range pierce damage boss_damage camo_damage crit_damage stun_damage status_damage moab_damage fortified_moab_damage ceramic_damage fortified_damage lead_damage fortified_lead_damage projectile_count attack_speed income cost duration note footprint hotkey damage_type cooldown crit_occurance delay } } }
VARIABLES
json
{}
POST
monkeyById
Gets a monkey by ID. ID is a database identifier number starting at 0.
SCHEMA DEFINITION
graphql
type Query { monkeyById (id: ID!): Monkey }
QUERY EXAMPLE
QUERY
graphql
query monkeyById ($id: ID!) { monkeyById (id: $id) { id name type description cost_gold filename abilities { id active upgrade_path upgrade_tier name description cost_gold cost_xp modifiers pros cons } tier { id tier } ability_tiers { id tier top_path middle_path bottom_path pros cons } stats { tower_stats_id range pierce damage boss_damage camo_damage crit_damage stun_damage status_damage moab_damage fortified_moab_damage ceramic_damage fortified_damage lead_damage fortified_lead_damage projectile_count attack_speed income cost duration note footprint hotkey damage_type cooldown crit_occurance delay } } }
VARIABLES
json
{ "id": 0 }
POST
monkeyByName
Gets a monkey by name. Name is a string of the monkey name.
SCHEMA DEFINITION
graphql
type Query { monkeyByName (name: String!): Monkey }
QUERY EXAMPLE
QUERY
graphql
query monkeyByName ($name: String!) { monkeyByName (name: $name) { id name type description cost_gold filename abilities { id active upgrade_path upgrade_tier name description cost_gold cost_xp modifiers pros cons } tier { id tier } ability_tiers { id tier top_path middle_path bottom_path pros cons } stats { tower_stats_id range pierce damage boss_damage camo_damage crit_damage stun_damage status_damage moab_damage fortified_moab_damage ceramic_damage fortified_damage lead_damage fortified_lead_damage projectile_count attack_speed income cost duration note footprint hotkey damage_type cooldown crit_occurance delay } } }
VARIABLES
json
{ "name": "Wizard Monkey" }
POST
heroes
Get all heroes.
SCHEMA DEFINITION
graphql
type Query { heroes: [Hero]! }
QUERY EXAMPLE
QUERY
graphql
query heroes { heroes { id name type description cost_gold cost_cash filename abilities { id active upgrade_path upgrade_tier name description cost_gold cost_xp modifiers pros cons } tier { id tier } stats { tower_stats_id range pierce damage boss_damage camo_damage crit_damage stun_damage status_damage moab_damage fortified_moab_damage ceramic_damage fortified_damage lead_damage fortified_lead_damage projectile_count attack_speed income cost duration note footprint hotkey damage_type cooldown crit_occurance delay } } }
VARIABLES
json
{}
POST
heroById
Gets a hero by ID. ID is a database identifier number starting at 0.
SCHEMA DEFINITION
graphql
type Query { heroById (id: ID!): Hero }
QUERY EXAMPLE
QUERY
graphql
query heroById ($id: ID!) { heroById (id: $id) { id name type description cost_gold cost_cash filename abilities { id active upgrade_path upgrade_tier name description cost_gold cost_xp modifiers pros cons } tier { id tier } stats { tower_stats_id range pierce damage boss_damage camo_damage crit_damage stun_damage status_damage moab_damage fortified_moab_damage ceramic_damage fortified_damage lead_damage fortified_lead_damage projectile_count attack_speed income cost duration note footprint hotkey damage_type cooldown crit_occurance delay } } }
VARIABLES
json
{ "id": 0 }
POST
heroByName
Gets a hero by name. Name is a string of the hero name.
SCHEMA DEFINITION
graphql
type Query { heroByName (name: String!): Hero }
QUERY EXAMPLE
QUERY
graphql
query heroByName ($name: String!) { heroByName (name: $name) { titleid name type description cost_gold cost_cash filename abilities { id active upgrade_path upgrade_tier name description cost_gold cost_xp modifiers pros cons } tier { id tier } stats { tower_stats_id range pierce damage boss_damage camo_damage crit_damage stun_damage status_damage moab_damage fortified_moab_damage ceramic_damage fortified_damage lead_damage fortified_lead_damage projectile_count attack_speed income cost duration note footprint hotkey damage_type cooldown crit_occurance delay } } }
VARIABLES
json
{ "name": "Captain Churchill" }
POST
patchByVersion
Gets patch update notes by version number. Version is a string of the version number. The largest depth for recursive items is 4 (Items -> Items -> Items -> Items).
SCHEMA DEFINITION
graphql
type Query { patchByVersion (version: String!): Patch }
QUERY EXAMPLE
QUERY
graphql
query patchByVersion ($version: String!) { patchByVersion (version: $version) { release items { title text tower type description items { ... } } }
VARIABLES
json
{ "version": "29.0" }
POST
latestThreePatchUpdatesByTowerName
Gets the the latest patch updates by tower name. Name is a string of the monkey/hero name. Start is the starting pagination index (defaults to 0). The largest depth for recursive Patch items is 4 (Items -> Items -> Items -> Items).
SCHEMA DEFINITION
graphql
type Query { latestThreePatchUpdatesByTowerName (name: String!, start: Int): PatchUpdate }
QUERY EXAMPLE
QUERY
graphql
query latestThreePatchUpdatesByTowerName ($name: String!, $start: Int) { latestThreePatchUpdatesByTowerName (name: $name, start: $start) { start items { release items { title text tower type description items { ... } } }
VARIABLES
json
{ "name": "Captain Churchill" }
Objects
All GraphQL API objects. Contains each field and its description.
Monkey
Name | Description |
---|---|
id ( ID! ) | Identifies the primary key from the database. |
name ( String! ) | The name of the monkey. |
type ( String! ) | The class type of monkey. |
description ( String! ) | The description for the monkey. |
cost_gold ( Int! ) | The in-game gold cost. |
filename ( String! ) | The image filename. |
abilities ( [Ability!]! ) | A list of all monkey abilities. |
tier ( TowerTier! ) | The tier list rank for the monkey. |
ability_tiers ( [AbilityTier] ) | A list of tiers for different ability paths. |
stats ( TowerStats ) | The default tower stats. |
Hero
Name | Description |
---|---|
id ( ID! ) | Identifies the primary key from the database. |
name ( String! ) | The name of the hero. |
type ( String! ) | The class type of hero. |
description ( String! ) | The description for the hero. |
cost_gold ( Int! ) | The in-game gold cost. |
cost_cash ( Int! ) | The cash cost to own the hero. |
filename ( String! ) | The image filename. |
abilities ( [Ability!]! ) | A list of all hero abilities. |
tier ( TowerTier! ) | The tier list rank for the hero. |
stats ( TowerStats ) | The default tower stats. |
TowerTier
Name | Description |
---|---|
id ( ID! ) | Identifies the primary key from the database. |
tier ( String! ) | The tier list rank for the tower. |
Ability
Name | Description |
---|---|
id ( ID! ) | Identifies the primary key from the database. |
active ( Boolean! ) | Indicates whether the ability has an active ability. |
upgrade_path ( Int! ) | Indicates what path the ability is on. 0, 1 or 2 for X-X-X, respectively. |
upgrade_tier ( Int! ) | Indicates what ability it is on the path. 0-4, 4 being tier 5 ability. |
name ( String! ) | The name of the ability. |
description ( String! ) | The description of the ability. |
cost_gold ( Int! ) | The in-game gold cost. |
cost_xp ( Int! ) | The xp cost to unlock the ability. |
modifiers ( String! ) | A multi-delimited string list of modifiers the ability changes. |
pros ( String! ) | The comma delimited string list of pros about the specific ability. |
cons ( String! ) | The comma delimited string list of cons about the specific ability. |
AbilityTier
Name | Description |
---|---|
id ( ID! ) | Identifies the primary key from the database. |
tier ( String! ) | The tier list rank for the ability path. |
top_path ( Int! ) | Indicates what ability is on the top ability path. |
middle_path ( Int! ) | Indicates what ability is on the middle ability path. |
bottom_path ( Int! ) | Indicates what ability is on the bottom ability path. |
pros ( String! ) | The comma delimited string list of pros about the ability path. |
cons ( String! ) | The comma delimited string list of cons about the ability path. |
TowerStats
Name | Description |
---|---|
tower_stats_id ( ID! ) | Identifies the primary key from the database. |
range ( Float! ) | The default range the tower begins with. |
pierce ( Int! ) | The default amount of pierce the tower begins with. |
damage ( Int! ) | The default amount of damage the tower begins with. |
boss_damage ( Int ) | The default amount of boss damage the tower begins with. |
camo_damage ( Int ) | The default amount of camouflage damage the tower begins with. |
crit_damage ( Int ) | The default amount of critical damage the tower begins with. |
stun_damage ( Int ) | The default amount of stun damage the tower begins with. |
status_damage ( Int ) | The default amount of status damage the tower begins with. |
moab_damage ( Int ) | The default amount of M.O.A.B damage the tower begins with. |
fortified_moab_damage ( Int ) | The default amount of fortified M.O.A.B damage the tower begins with. |
ceramic_damage ( Int ) | The default amount of ceramic damage the tower begins with. |
fortified_damage ( Int ) | The default amount of fortified damage the tower begins with. |
lead_damage ( Int ) | The default amount of lead damage the tower begins with. |
fortified_lead_damage ( Int ) | The default amount of fortified lead damage the tower begins with. |
projectile_count ( Int! ) | The default amount of projectiles the tower begins with. |
attack_speed ( Float! ) | The default attack speed (A.K.A Reload Speed) the tower begins with. |
income ( Int ) | The default income the tower begins with. |
cost ( Int ) | The default cost the ability is. |
duration ( Int ) | The default duration time the tower begins with. |
note ( String ) | A note associated with the tower. |
footprint ( Int! ) | The default footprint the tower is sized to. |
hotkey ( String! ) | The default hotkey the tower is assigned to. |
damage_type ( String! ) | The default damage type the tower begins with. |
cooldown ( Int ) | The default cooldown time the tower begins with. |
crit_occurance ( String ) | The default critical chance the tower begins with. |
delay ( Int ) | The default delay time the tower begins with. |
PatchUpdate
Name | Description |
---|---|
start ( Int! ) | Indicates the next index for pagination. A start of -1 signifies no more data to be fetched. |
items ( [Patch] ) | A list of different patch versions and their notes on the patch update. |
Patch
Name | Description |
---|---|
release ( String! ) | The release date of the patch in the form YYYY-MM-DD. |
items ( [Items]! ) | A list of items containing all the patch notes. |
Items
Name | Description |
---|---|
title ( String ) | The title for the item. |
text ( String ) | The text for the item. |
tower ( String ) | The tower associated with the item. |
type ( String ) | The monkey tower type (e.g. Primary). |
description ( String ) | The description for the item. |
items ( [Items] ) | A list of items (recursive). |