GeoGuessr API endpoints

GeoGuessr API endpoints

To work on GeoGuessr maps, I created an app that would pull in data from the game using the game’s API. I had to use my browser’s console to find out what API calls the website actually makes as there is no publically accessible documentation on it.

So here’s my unofficial guide for those who wish to use the GeoGuessr API.

Notes: All calls start with “geoguessr.com/api/”. For some of the calls, you need to be logged in, for others you don’t. The latter are indicated with italics. As I understand, there’re 2 versions of the API currently in use, 3 and 4. It is possible that in the near future a complete transition to v4 will happen and the old calls will be deprecated.

  1. v4/feed/private – entries from the “Activities” page of your profile, including game tokens. Variables: count, page.
  2. v3/profiles – info of the currently logged-in user.
  3. v4/notifications – notifications of the currently logged-in user. Returns an empty array if all the notifications have been read. Variables: count, page.
  4. v3/social/friends – friends of the currently logged-in user. Presumably, returns an empty array if the user doesn’t have friends. Variables: count, page.
  5. v3/profiles/achievements – achievements of the currently logged-in user.
  6. v4/objectives – objectives of the currently logged-in user. You can also add the /unclaimed endpoint to this address.
  7. v3/social/maps/browse/personalized – personalised map for the currently logged-in user.
  8. v3/social/badges/unclaimed – unclaimed badges of the currently logged-in user.
  9. v3/social/events/unfinishedgames – unfinished games of the currently logged-in user, including the guesses, but not the rounds themselves.
  10. v3/profiles/maps – maps of the currently logged-in user (“My Maps” page).
  11. v3/likes – liked maps of the currently logged-in user (“Liked Maps” page). Variables: count, page.
  12. v4/stats/me – stats of the currently logged-in user but not what you see on your profile page.
  13. v3/profiles/stats – stats of the currently logged-in user which are displayed on the profile page.
  14. v3/subscriptions – subscriptions of the currently logged-in user.
  15. v3/accounts/signin – signs you in, the email and the password must be attached as a payload (JSON) to successfully perform the operation.
  16. v3/accounts/signout – signs you out. Be careful, no payload is required for this operation so it signs you out as soon as you reach the endpoint.
  17. v3/games/XXXXXXXXXXXXXXXX – insert a game token instead of the X’s to gather the information about a certain game, including its type, rounds, score, etc. Any game ever played by whatever user can be accessed with this call, provided you have the token.
  18. v3/social/maps/browse/popular/random – a random popular map.
  19. v3/challenges/daily-challenges/today OR v3/challenges/daily-challenges/previous – today’s or previous daily challenge info.
  20. v4/seasons/active/stats – stats of the current season.
  21. v3/experiments – list of GeoGuessr experiments.
  22. v3/competitions – list of GeoGuessr competitions.
  23. maps/(map name or map id) – info on maps, works with map names for official maps like “world” or “famous-places”.

For some of the calls, I’m not entirely certain what the response should be as in my case they return an empty array. Additionally, I haven’t played most of the game modes yet because I mostly play country streak so my expertise might not be so deep and some of my comments might not be as extensive.

Enjoy the guide and if in the future you create anything using Geoguessr API, feel free to share your work! I’ll be sharing my app as soon as I build a decent GUI.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: