It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
high rated
I'm working on documenting the API used by the GOG Galaxy client to make it possible to write 3rd party clients, especially a native Linux one. This is mainly for developers, you probably won't get any use out of it as an ordinary user. You can find it at https://gogapidocs.readthedocs.org

If you found new URLs or want to add details, please go to https://github.com/Yepoleb/gogapidocs and make a pull request. It takes less than an hour and I can focus on other GOG projects that are much harder to get into.

Update: Galaxy protocol files are now available at https://github.com/Yepoleb/gog_protocols
Post edited June 22, 2018 by Yepoleb
Thank you, seems like a good start. Would love to see what our regular scripters can do with it.
Oh brilliant - I was also trying to decipher the API but you're far ahead of me. Thanks for sharing.
Nice, I'll have a look at this later. Thanks for sharing :)
I'm having a problem with documenting the community features because none of my friends are on GOG. Would it be okay if I ask for testers here? I don't want to break any "don't beg for friends" rules.
avatar
Yepoleb: I'm having a problem with documenting the community features because none of my friends are on GOG. Would it be okay if I ask for testers here? I don't want to break any "don't beg for friends" rules.
Yeah, you can add me as a friend if you want. That's some giod work you've done there :)
You may add me as well, however I'm a bit fuzzy on coding but I might be able to do some testing. My coding lessons have been on hiatus.
high rated
Here are a few more, for talking to Connect

GET [url=https://www.gog.com/api/v1/users/(int]https://www.gog.com/api/v1/users/(int[/url]: userid)/gogLink/steam/linkedAccount

Returns information about accounts linked through GOG connect

Example request:
https://www.gog.com/api/v1/users/999999999999/gogLink/steam/linkedAccount

Example response:
{
"href":"https:\/\/www.gog.com\/api\/v1\/users\/999999999999\/gogLink\/steam\/linkedAccount",
"user":{
"status":"linked",
"gogUsername":"Nines",
"gogAvatar":"https:\/\/images.gog.com\/9999999999999999999999999999999999999999999999999999999999999999",
"steamUsername":"Nines",
"steamAvatar":"https:\/\/steamcdn-a.akamaihd.net\/steamcommunity\/public\/images\/avatars\/4f\/999999999999999 9999999999999999999999999_medium.jpg"
},
"exchangableSteamProducts":"https:\/\/www.gog.com\/api\/v1\/users\/999999999999\/gogLink\/steam\/exchangeableP roducts"
}



GET [url=https://www.gog.com/api/v1/users/(int]https://www.gog.com/api/v1/users/(int[/url]: userid)/gogLink/steam/exchangeableProducts

Returns list of product ids currently on GOG Connect and whether they are available to claim

Example request:
GET https://www.gog.com/api/v1/users/999999999999/gogLink/steam/exchangeableProducts

Example response:
{
"href":"https:\/\/www.gog.com\/api\/v1\/users\/999999999999\/gogLink\/steam\/exchangeableProducts",
"items":{
"1207658744":{
"id":1207658744,
"status":"imported"
},
"1207658796":{
"id":1207658796,
"status":"readyToLink"
},
"1207658797":{
"id":1207658797,
"status":"unavailable"
},
}
}


GET [url=https://www.gog.com/api/v1/users/(int]https://www.gog.com/api/v1/users/(int[/url]: userid)/gogLink/steam/synchronizeUserProfile
Instructs Connect to scan a user's Steam account for eligible games
Can be used this to find vulnerabilities by hackers? :-/
avatar
gogamess: Can be used this to find vulnerabilities by hackers? :-/
In terms of the hacker, there's a bit of an ethics; you tell the company or entity first of any vulnerabilities in private, and then you put them on a timer to fix it. If they don't fix it in the time, then the vulnerability is publicly revealed and you get to watch as someone slaps together a security patch.
Wow, thanks a lot, Barefoot_Monkey. I didn't expect anyone to contribute so quickly. Unfortunately the forum removed most of the formatting, which is the most time-consuming part. It'd be great if you could use a paste service or create a pull request Github, which is linked near the bottom of the index page. Also please shuffle the characters in a string you want to censor instead of overwriting it, makes the examples look much nicer. I'm really happy about your contribution and gave you credit on the main page.
avatar
gogamess: Can be used this to find vulnerabilities by hackers? :-/
Yeah, but it's all public information, I'm not revealing any secrets. They could easily figure this out themselves.
avatar
Yepoleb: I'm working on documenting the API used by the GOG Galaxy client to make it possible to write 3rd party clients, especially a native Linux one.
Just, FYI:
Document the protocol and API of the Galaxy updater client to enable community alternatives
GOG (a blue at any rate) at one point stated they would document the Galaxy protocol. They also planned some significant downloader development for the client which I don't believe has surfaced yet.
That said who knows how much longer the wait will be or if they still plan on documenting it.
avatar
Gydion: Just, FYI:
Document the protocol and API of the Galaxy updater client to enable community alternatives
GOG (a blue at any rate) at one point stated they would document the Galaxy protocol. They also planned some significant downloader development for the client which I don't believe has surfaced yet.
That said who knows how much longer the wait will be or if they still plan on documenting it.
I've seen many of these wishlist entries and nothing ever happens. I want a client now, not possibly in a year or something, if everything goes well. The GOG team seems to have a very open attitude towards these things, but something is holding them back. Maybe it's management concerns or they're just overworked (which is very common in the games industry). We shouldn't expect this to magically change, so I decided to take matters into my own hands and start this project. I'm fairly confident that we can have a hacked together but functional alternative client in the next couple of months.
avatar
Gydion: Just, FYI:
Document the protocol and API of the Galaxy updater client to enable community alternatives
GOG (a blue at any rate) at one point stated they would document the Galaxy protocol. They also planned some significant downloader development for the client which I don't believe has surfaced yet.
That said who knows how much longer the wait will be or if they still plan on documenting it.
avatar
Yepoleb: I've seen many of these wishlist entries and nothing ever happens. I want a client now, not possibly in a year or something, if everything goes well. The GOG team seems to have a very open attitude towards these things, but something is holding them back. Maybe it's management concerns or they're just overworked (which is very common in the games industry). We shouldn't expect this to magically change, so I decided to take matters into my own hands and start this project. I'm fairly confident that we can have a hacked together but functional alternative client in the next couple of months.
A Client? You mean like GOG Galaxy or are we talking about something entirely different in terms of client?
Please, make one that icludes Gogrepo! :P
Post edited December 12, 2016 by phaolo