We're archiving the forums and going read only! You'll be able to see old threads, but new topics and replies have been disabled.

Visit the Game Jolt community for new questions and conversations.


Hello! I'm currently writing my own C# GJ API and I've been having trouble with the authentication. I can't understand what I should put as the signature. I've checked many similar topics and I haven't found a solution. Any help would be appreciated, thanks!


over 6 years ago

It's simple. You have to get such values from gamejolt pages:

  • Your Game Id

  • Your Game Private Key

  • User Name

  • User Token

First, create your call URL. So for authentication it'll be something like:
URL="https://api.gamejolt.com/api/game/v1_2/users/auth/?game_id=GAMEID&user_token=USERTOKEN&username=USERNAME" (for GAMEID/USERTOKEN/USERNAME you have to put correct values.

Than take your game private key and append it to your URL.
URL_WITH_KEY=URL + GAME_PRIVATE_KEY

Now calculate hash (MD5 or SHA1)
SIGNATURE=hash(URL_WITH_KEY)

And now the url with signature will be:
FINAL_URL=URL + "&signature=" + SIGNATURE

You may also look at may code of plugin for godot: https://github.com/rojekabc/-godot-gj-api/blob/master/main.gd . It's in the function _compose_url at line 204

over 6 years ago
over 3 years ago

I'm just testing stuff out. What is a hash, why do you calculate it, how do you calculate it, what is MD5, what is SHA1, what do these two terms mean, how is each format written and punctuated, where can one be entered as part of a URL-based-request, and may I please have an example of a pretend-URL-request that could have its values swapped out with my game's information and entered into my browser for the testing of my own game's trophy-system?

In other words, the hash, its proper-formatting, and its position in the URL; are the only three parts of the signature that I apparently-don't understand, as all my attempts lead to it saying that the signature is invalid.

Thank you so very much!

Last modified on February 19, 2022 by JadeJohnson Industries™ @JadeJohnsonIndustries