Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Zoo Wiki
Search
Search
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
API Key
Page
Discussion
English
Read
Edit
Edit source
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
Edit source
View history
General
What links here
Related changes
Special pages
Page information
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Relic infobox}} '''API Key''' is a unique [[Relics|relic]] unlocked by sending a request to a "secret" endpoint. ==Obtaining== The player must have at least three other relics in order to obtain API Key.<ref name="3relics"/> API Key is obtained by sending a [[wikipedia:POST request|POST request]] to the following endpoint: <code>https://gdcolon.com/zoo/api/zooKey</code>. This can be done using a desktop browser's [[wikipedia:Web development tools|developer tools]]. The request body must contain a [[wikipedia:JSON|JSON]] object, with the player's Discord ID as an <code>id</code> parameter. The player must also provide their [[wikipedia:session token|session token]], either as a [[wikipedia:HTTP cookie|cookie]] or as a <code>Token</code> [[wikipedia:HTTP header|header]]. The server responds with an error, asking for an additional, randomly-selected password (e.g. public IP address / last 3 digits of your token) in the response body. The random selection changes per player. When resending the request with the password included, the API Key is granted. Below is a working Python example: <syntaxhighlight lang="python" line=""> import requests url = "https://gdcolon.com/zoo/api/zooKey" #endpoint headers = {"Content-Type": "application/json", "Accept": "application/json", "Token": ""} #request headers, insert authentication token into the Token header #id refers to your Discord User ID #password can be a few things (usually it's your public IP address/last 3 digits of your token). Leave blank at first and see the response to know which password it wants params = {"id": "", "password": ""} response = requests.post(url, headers=headers, json=params) print(response.status_code) print(response.text) </syntaxhighlight> The authentication token is obtained by 1. Logging into gdcolon.com/zoo 2. Going into the Application tab in the Developer Tools 3. Finding https://gdcolon.com under 'Cookies', which is located in 'Storage'. 4. Find the Cookie Value for 'zoo', which is the authentication token. Here's a website that allows you to run python code. https://reqbin.com/code/python ===Troubleshooting=== '''If you encounter an error while running the code via the aforementioned website, follow these steps:''' # Install Python # Save your code in a Python (.py) file, you can use Python itself, Notepad, Visual Studio, anything you want. Save it in your user folder under an easy name (e.g. zoo.py) # Open CMD (Win+R -> cmd), If you are on MacOS open Terminal from the Launchpad. If you are on Linux you know how to open the terminal already... # Run the following command: python <span style="color: #666666">[name of the file with the code you saved]</span> # If you did everything correctly, you should now have the API Key relic! '''If python says the "requests" library is not installed, run this command in your terminal:'''<syntaxhighlight lang="batch"> python -m pip install requests </syntaxhighlight> ==Effects== {{Description}} The player's profile on the [[Zoo API]] gains a <code>secretInfo</code> field with the following data: {| class="wikitable sortable mw-collapsible mw-collapsed" |+ !Key !Explanation !Data type |- |rowspan=2|<code>sort</code> |rowspan=2|How the player's animals are sorted |<code>0</code>: Sorted by amount |- |<code>1</code>: Sorted by name |- |<code>color</code> |Zoo color |Decimal number representing a [[wikipedia:hex triplet|hex triplet]] |- |<code>promise</code> |Things guaranteed for the next rescue | {| class="wikitable sortable mw-collapsible" |+ !Key !Explanation !Data type |- |<code>pair</code> |Whether a pair is guaranteed |Boolean |- |rowspan=8|<code>type</code> |rowspan=8|The guaranteed [[animal type]] |<code>arctic</code>: Arctic animal |- |<code>bird</code>: Bird |- |<code>bug</code>: Bug |- |<code>farm</code>: Farm animal |- |<code>favorite</code>: Leader's favorite animal |- |<code>jungle</code>: Jungle animal |- |<code>pet</code>: Pet |- |<code>water</code>: Aquatic animal |- |<code>animal</code> |The guaranteed animal |Internal name of the animal (equivalent to the shortcode of its emoji) |- |<code>debuffImmunity</code> |Cooldown raises will be divided by this number |Integer |- |<code>buffBoost</code> |Cooldown reductions will be multiplied by this number |Integer |- |<code>luckyRelics |Whether the best outcome is guaranteed for luck-based effects |Boolean |} |- |<code>questEnd</code> |When the current [[quest]] ends |[[wikipedia:Unix timestamp|Unix timestamp]] |- |<code>curseEnd</code> |When the player's [[curse]] ends |Unix timestamp |- |<code>mechanicEnd</code> |When the current [[mechanic]] upgrade finishes |Unix timestamp |- |<code>questBoosts</code> |Bonuses for the current quest | {| class="wikitable sortable mw-collapsible" |+ !Key !Explanation !Data type |- |<code>rareCurse</code> |Whether [[Safety Pin]] was used |Boolean |- |<code>extraRewards</code> |Number of extra rewards guaranteed by [[Telescope]] |Integer |- |<code>length</code> |Length increase |Number of hours |} |- |<code>shop</code> |Shop info | {| class="wikitable sortable mw-collapsible |+ !Key !Explanation !Data type |- |<code>credits</code> |Shop credits |Integer |- |rowspan=2|<code>maxCredits</code> |rowspan=2|Maximum credits |<code>6</code> if [[Sack]] is equipped |- |<code>4</code> otherwise |- |<code>nextCredit</code> |When the next credit will be given |Unix timestamp |- |<code>lastPurchase |Time of last purchase |Unix timestamp |} |- |<code>cooldowns</code> |Most time-based cooldowns | {| class="wikitable sortable mw-collapsible" |+ !Key !Explanation !Data type |- |<code>rescue</code> |Rescue cooldown |rowspan=7|Unix timestamp |- |<code>relic</code> |Relic cooldown |- |<code>leader</code> |Leader cooldown |- |<code>cardPull</code> |{{cmd|pull}} cooldown |- |<code>pet</code> |{{cmd|pet}} cooldown |- |<code>fishy</code> |{{cmd|fishy}} cooldown |- |<code>sisyphus</code> |{{cmd|sisyphus}} cooldown |- |rowspan=2|<code>profile</code> |rowspan=2|Profile cooldown |<code>null</code> if player only has one profile |- |Unix timestamp otherwise |} |- |<code>terminal</code> |[[Terminal]] data | {| class="wikitable sortable mw-collapsible" |+ !Key !Explanation !Data type |- |<code>directory</code> |Current directory |String |- |<code>commands</code> |Commands listed in {{cmd|help}} |Array |- |<code>nextFusion</code> |{{cmd|fuse}} cooldown |Number of rescues until {{cmd|fuse}} can be used (<code>0</code> if no cooldown) |} |- |<code>garden</code> |[[Garden]] data | {| class="wikitable sortable mw-collapsible" |+ !Key !Explanation !Data type |- |<code>nextPlant</code> |When the next seedling can be planted |Unix timestamp |- |rowspan=2|<code>watered</code> |rowspan=2|Whether the garden was watered |<code>false</code>: A plant can be watered |- |<code>true</code>: Cannot water until rescuing again |- |<code>longestPlant</code> |Longest lasting plant |Milliseconds |} |} ==History== {| class="wikitable" |+ !colspan=2|[[RoboTop]] |- |v93.22 |Added API Key.<ref>{{cite changelog|93.22|added a secret new relic, may or may not be hidden in the console of the zoo site|robotop=1}}</ref> |+ !colspan=2|Zoo Bot |- |v1.0.1 |Now displays cooldowns for {{cmd|pull}} and {{cmd|pet}}.<ref>{{cite changelog|1.0.1|Added card and pet cooldowns to the API, if you have the right permissions}}</ref> |- |v1.3.1 |Now displays more info.<ref>{{cite changelog|1.3.1|Added more terminal related info to API Key}}</ref> |- |v1.4.5 |Now requires 3 other relics to unlock instead of just 1.<ref name="3relics">{{cite changelog|1.4.5|Tweaked a certain secret relic to require having 3 relics first (previously 1)}}</ref> |} API Key was the first relic to have a unique unlock method other than through quests. ==References== <references/> [[Category:Relics]]
Summary:
Please note that all contributions to Zoo Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Zoo Wiki:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Templates used on this page:
Template:Cite changelog
(
edit
)
Template:Cmd
(
edit
)
Template:Description
(
edit
)
Template:Description plain
(
edit
)
Template:Flavor text
(
edit
)
Template:Ingame description
(
edit
)
Template:Release date
(
edit
)
Template:Relic infobox
(
edit
)
Template:Terminal command
(
edit
)
Toggle limited content width