Skip to content

REST API

ZombsRoyale’s API is split into two components that each handle different things. Below is the documentation for the HTTPS/REST part.

GET /api

Description: Health check.

GET /api/metrics/update

Description: Does nothing at all.

GET /user/logout

Description: Logs out on the Web client by returning HTML code that deletes the userKey cookie client-side.

GET /api/config

Description: Returns ApiGetConfigResponse object.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
platformoptions: web, windows, android, iosno
versionclient versionno
version2anticheat versionno
userKeyaccount tokenno
isPolledUpdatepolledno

GET /api/leaderboard/live

Description: Returns ApiLeaderboardResponse object.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenno
modegame mode; options: solo, duo, squad, limitedno
timeoptions: 24h, 7d, 1m, 1y, all (all time)no
categoryoptions: wins, kills, kills_per_round, winrate, time_alive, rounds, top10no

GET /api/poll/available

Description: Returns ApiPollAvailableResponse object.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes

POST /api/poll/vote/:poll-id:

Description: Votes in a poll.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes
optionIdselected optionyes

GET /api/profile/:friend-code:

Description: Returns ApiProfileResponse object.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes*

* used not to be authenticated

GET /api/quest/available

Description: Returns ApiQuestAvailableResponse object.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenno

POST /api/reward/tracks/mid-season/buy

Description: Deprecated.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes

GET /api/reward/tracks/mid-season

Description: Deprecated.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenno

POST /api/reward/tracks/:track-id:/buy

Description: Buys a track.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes

POST /api/reward/tracks/:track-id:/skip

Description: Skips a track.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes
tierstiers to skipyes

GET /api/reward/tracks

Description: Returns tracks object made of ApiRewardTrack objects.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenno

GET /api/shop/available

Description: Returns ApiShopAvailableResponse object.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenno
sectionsoptions: all, items, iaps, packs, timedDealsno

POST /api/shop/discord/handle

Description: Unknown.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes

POST /api/shop/unity/handle

Description: Unknown.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes

GET /api/:tournament-code:/join

Description: Returns tournament status. The tournament is open if the status field is “success”.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenno

GET /api/user/:user-key:

Description: Returns ApiUser object.

POST /api/user/:user-key:/buy

Description: Buys an item or chest (pack) from the shop.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
quantityitem countyes
timedDealIditem countno*
itemIditem countno*
packIditem countno*

* one of these must me present

POST /api/user/:user-key:/clear-sessions

Description: Revokes all user keys.

POST /api/user/:user-key:/delete-account

Description: Deletes account.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
confirmationKeyauthentication tokenyes

POST /api/user/:user-key:/friend-code/update

Description: Changes friend code & charges gems.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
namenew nameyes

POST /api/user/:user-key:/pack/open

Description: Opens an available chest (pack).
Query Parameters:

NAMEDESCRIPTIONREQUIRED
packIditem countyes

GET /api/user/:user-key:/rewards

Description: Returns ApiUserRewardsResponse object.

POST /api/user/:user-key:/rewards/claim

Description: Claims a reward.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
typeoptions: first, gift, recurring, bonus, instagram, nitro, coming_soonyes

POST /user/login/google

Description: Redirects to Google’s embedded Oauth login page (which redirects back to /user/validate/google after login).
Query Parameters:

NAMEDESCRIPTIONREQUIRED
csrfCSRF tokenyes

POST /user/login/facebook

Description: Redirects to Facebook’s embedded Oauth login page (which redirects back to /user/validate/facebook after login).
Query Parameters:

NAMEDESCRIPTIONREQUIRED
csrfCSRF tokenyes

POST /user/validate/google

Description: Returns the user key of the Google account on the ApiUser object after successful login. On the web version of the game, the returned HTML sends an onLoginSuccess message to the client with the login user data and csrf token to origin. On the Windows client it sends a GET request (localhost:7163/?userKey={0}&csrf={1}) to login with user key through a gateway image in HTML.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
codecode tokenyes
scopescopeyes
authuser”0”yes
prompt”none”yes

POST /user/validate/facebook

Description: Returns the user key of the Facebook account on the ApiUser object after successful login. On the web version of the game, the returned HTML sends an onLoginSuccess message to the client with the login user data and csrf token to origin. On the Windows client it sends a GET request (localhost:7163/?userKey={0}&csrf={1}) to login with user key through a gateway image in HTML.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
codecode tokenyes
statestate tokenyes

POST /api/validate/apple

Description: Deprecated. Unknown.

POST /api/validate/device/:deviceId:

Description: Creates a device account (or signs in) and returns a new user key on the ApiUser object. Device accounts are only usable from iOS and Android versions of the game.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
deviceIdstring identifier (format: {platform}-{uuid})yes

POST /api/validate/discord/:authToken:

Description: Takes a Discord Oauth Bearer Authorization Token and returns ApiUser object.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
authTokentokenyes

POST /api/validate/facebook/:accessToken:

Description: Deprecated.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
accessTokentokenyes

POST /api/validate/google/:authCode:

Description: Deprecated.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
authCodetokenyes

POST /api/validate/gamecenter

Description: Deprecated. Unknown.

POST /api/tournament/:tournament-code:/whitelist/update

Description: Unknown.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes

POST /api/tournament/:tournament-code:/join

Description: Unknown.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes

GET /api/tournament/:tournament-code:/whitelist

Description: Unknown.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes

GET /api/clan/available

Description: Deprecated. Gets available clans. Returns ApiClanAvailableResponse object.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenno

POST /api/clan/create

Description: Deprecated. Creates a clan.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes
tag3 letter tagyes
nameclan nameyes
descriptionclan descriptionno

POST /api/clan/:clanId:/invite

Description: Deprecated. Invites a user to a clan.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes
userIduser idyes

POST /api/clan/:clanId:/join

Description: Deprecated. Joins a clan you were previously invited to.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes
clanIdclan idyes

POST /api/clan/:clanId:/leave

Description: Deprecated. Leaves a clan.
Query Parameters:

NAMEDESCRIPTIONREQUIRED
userKeyaccount tokenyes