GOG-API Documentation · project, so don’t be surprised if something is missing. But now get...

93
GOG-API Documentation Release 0.1 Gabriel Huber Jun 05, 2018

Transcript of GOG-API Documentation · project, so don’t be surprised if something is missing. But now get...

Page 1: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API DocumentationRelease 0.1

Gabriel Huber

Jun 05, 2018

Page 2: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency
Page 3: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

Contents

1 Contents 31.1 Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.2 Account Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.3 Listing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211.4 Store . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251.5 Reviews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271.6 GOG Connect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291.7 Galaxy APIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301.8 Game ID List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

2 Links 83

3 Contributors 85

HTTP Routing Table 87

i

Page 4: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

ii

Page 5: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Welcome to the unoffical documentation of the APIs used by the GOG website and Galaxy client. It’s a very youngproject, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET andPOST don’t mean anything and consistency is a lucky mistake.

Contents 1

Page 6: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

2 Contents

Page 7: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

CHAPTER 1

Contents

1.1 Authentication

1.1.1 Introduction

All GOG APIs support token authorization, similar to OAuth2. The web domains www.gog.com, embed.gog.com andsome of the Galaxy domains support session cookies too. They both have to be obtained using the GOG login page,because a CAPTCHA may be required to complete the login process.

1.1.2 Auth-Flow

1. Use an embedded browser like WebKit, Gecko or CEF to send the user to https://auth.gog.com/auth. An add-onin your desktop browser should work as well. The exact details about the parameters of this request are describedbelow.

2. Once the login process is completed, the user should be redirected to https://www.gog.com/on_login_successwith a login “code” appended at the end. Use the callbacks of your browser engine to detect it, take the codeand use it to request a token.

3. Renew the token when it expires after about an hour. Check the original response for an accurate lifetime.

1.1.3 Authorizing a Request

To authorize a request set the Authorization header to Bearer <token>. This has to be done for each call.

Example request:

GET /library/windows HTTP/1.1Host: embed.gog.comAuthorization: Bearer→˓xpIjnwyncascjBf20yz1n1tu8jo9spxyvy3zlvlL0rfoiiuly2hu5xnfgjysnuyhjqI7cmcatscp3ybgDjeqzwCggttnombuuicn_→˓t6dbqybzYvpoieqtamaKuxpgclnUlt_q4jf_haj2emwgtrkzdlkhwinu7o93bpxWrbjdxr

3

Page 8: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

1.1.4 Methods

GET /authRedirects to the login site. Don’t use this directly from your client, it’s not a JSON API, visit it with a webbrowser instead.

Query Parameters

• client_id (str) – OAuth2 Client ID. Use 46899977096215655.

• redirect_uri (str) – URL where the browser will be redirected after the login hasbeen completed. Use https://embed.gog.com/on_login_success?origin=client

• response_type (str) – Use code

• layout (str) – Use client2

Example request:

GET /auth?client_id=46899977096215655&redirect_uri=https%3A%2F%2Fembed.gog.com→˓%2Fon_login_success%3Forigin%3Dclient&response_type=code&layout=client2 HTTP/1.1Host: auth.gog.com

Example redirect:

http://localhost:8000/token?→˓code=oF8OSgZVMFb7a8Y3Dolrz4YPqDUnG7TCTsekYKcWnFNcmWWCJH7XJS3RN9d9NB0slx4FS1kss-→˓llBEXvgkCX8oNTP1u3yYG1p56f35jVZCclrCQMk803k5LmQLKM1Wb7

GET /tokenGenerates a new auth token from a login code or refreshes an old one.

Query Parameters

• client_id (str) – OAuth2 client ID. Use 46899977096215655

• client_secret (str) – OAuth2 secret. Use9d85c43b1482497dbbce61f6e4aa173a433796eeae2ca8c5f6129f2dc4de46d9

• grant_type (str) – authorization_code for new logins, refresh_token forrefreshs.

• code (str) – Only for new logins: Login code you got from the auth redirect.

• redirect_uri (str) – Only for new logins: The redirect URL you used in the authrequest.

• refresh_token (str) – Only for refreshes: The refresh_token you got from an oldtoken. This is a separate entry, not the old access token.

Example request:

GET /token?client_id=46899977096215655&client_→˓secret=9d85c43b1482497dbbce61f6e4aa173a433796eeae2ca8c5f6129f2dc4de46d9&grant_→˓type=authorization_code&→˓code=oF8OSgZVMFb7a8Y3Dolrz4YPqDUnG7TCTsekYKcWnFNcmWWCJH7XJS3RN9d9NB0slx4FS1kss-→˓llBEXvgkCX8oNTP1u3yYG1p56f35jVZCclrCQMk803k5LmQLKM1Wb7&redirect_uri=http%3A%2F→˓%2Flocalhost%3A8000%2Ftoken HTTP/1.1Host: auth.gog.com

Example response:

4 Chapter 1. Contents

Page 9: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

{"expires_in": 3600,"scope": "","token_type": "bearer","access_token":

→˓"xpIjnwyncascjBf20yz1n1tu8jo9spxyvy3zlvlL0rfoiiuly2hu5xnfgjysnuyhjqI7cmcatscp3ybgDjeqzwCggttnombuuicn_→˓t6dbqybzYvpoieqtamaKuxpgclnUlt_q4jf_haj2emwgtrkzdlkhwinu7o93bpxWrbjdxr","user_id": "48628349957132247","refresh_token": "48il-pjxfpknX0hwtxvBnRgNr-n5JAOTKpczaLEBHW7F65iTchjO46f7I-HAV-

→˓Cb","session_id": "6354900816570477251"

}

1.2 Account Management

Methods used to manage the user’s account.

1.2.1 User

GET /userData.jsonInformation about the logged in user.

GET /userData.json HTTP/1.1Host: embed.gog.com

Example response:

{"country": "AT","currencies": [

{"code": "EUR","symbol": "C"

},{"code": "USD","symbol": "$"

}],"selectedCurrency": {"code": "EUR","symbol": "C"

},"preferredLanguage": {

"code": "en","name": "English"

},"ratingBrand": "PEGI","isLoggedIn": true,"checksum": {

"cart": null,"games": "c1fc44f3808bd755560e1b00d34451a1","wishlist": "fcfd279ac1042f8baf8e659729ab1b89",

(continues on next page)

1.2. Account Management 5

Page 10: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"reviews_votes": null,"games_rating": null

},"updates": {

"messages": 0,"pendingFriendRequests": 0,"unreadChatMessages": 0,"products": 0,"forum": 0,"total": 0

},"userId": "48628349971017","username": "Yepoleb","email": "[email protected]","personalizedProductPrices": [],"personalizedSeriesPrices": []

}

GET /user/set-redirect-urlSets URL to redirect to after login. You shouldn’t need this with a native client which is always logged in.

Query Parameters

• url – Redirect URL, the only accepted value seems to be checkout

Example request:

GET /user/set-redirect-url?url=checkout HTTP/1.1Host: embed.gog.com

Example response:

No content

GET /user/reviewTipsStatus.jsonChecks if the user has read the tips that pop up before you can write your first review.

Example request:

GET /user/reviewTipsStatus.json HTTP/1.1Host: embed.gog.com

Example response:

{"userId": "48628349971017","readTips": false

}

GET /users/info/(int: user_id)Returns the public information about a user.

Query Parameters

• expand (str) – Additional sections to request. Possible values: friendStatus, wishlistSta-tus, blockedStatus

Response JSON Object

• friendStatus.status (int) –

6 Chapter 1. Contents

Page 11: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

– ANONYMOUS_USER = 0: No special relationship with this user.

– INVITED_USER = 1: You have sent this user a friend request.

– INVITED_BY_USER = 2: You have received a friend request from this user.

– FRIEND = 3: You are friends with this user.

• friendStatus.dateCreated (int) – Timestamp of when a friend request was sentor null.

• friendStatus.dateAccepted (int) – Timestamp of when a friend request was ac-cepted or null.

• wishlistStatus.sharing (int) –

– WISHLIST_PRIVATE = 0

– WISHLIST_PUBLIC = 1

– WISHLIST_FOR_FRIENDS = 2

Example request:

GET /users/info/48628349971017?expand=friendStatus,wishlistStatus,blockedStatus→˓HTTP/1.1Host: embed.gog.com

Example response:

{"id": "48628349971017","username": "Yepoleb","userSince": 1449237763,"avatars": {

"small": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_avs.jpg",

"small2x": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_avs2.jpg",

"medium": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_avm.jpg",

"medium2x": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_avm2.jpg",

"large": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_avl.jpg",

"large2x": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_avl2.jpg"},"friendStatus": {

"id": "48628349971017","status": 0,"dateCreated": null,"dateAccepted": null

},"wishlistStatus": {

"sharing": 2,"url": "https://embed.gog.com/u/Yepoleb/wishlist"

},"blockedStatus": {

"blocked": false},

(continues on next page)

1.2. Account Management 7

Page 12: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"chatStatus": {"url": "https://embed.gog.com/u/Yepoleb/chat","isChatRestricted": false

}}

1.2.2 Games & Movies

GET /user/data/gamesList of games and movies the account owns. Use GET /account/getFilteredProducts for more thanjust the IDs.

Example request:

GET /user/data/games HTTP/1.1Host: embed.gog.com

Example response:

{"owned": [1207658691,1207658713,1207658805,1207658924,1207658930,1207658945,1207658957,1929434313,1949616134,1432207890,1444035366,1444036272,1443696086

]}

GET /account/gameDetails/(int: game_id).jsonReturns detailed information about a game. Seems to work with movies as well, but they have their own method.

Example request:

GET /account/gameDetails/1207658691.json HTTP/1.1Host: embed.gog.com

Example response:

{"title": "Unreal Tournament 2004 Editor's Choice Edition","backgroundImage": "//images-4.gog.com/

→˓ebed1d5546a4fa382d7d36db8aee7f298eac7db3a8dc2f4389120b5b7b3155a9","cdKey": "","textInformation": "","downloads": [[

(continues on next page)

8 Chapter 1. Contents

Page 13: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"English",{"windows": [

{"manualUrl": "/downlink/unreal_tournament_2004_ece/en1installer3","downloaderUrl": "gogdownloader://unreal_tournament_2004_ece/

→˓installer_win_en","name": "Unreal Tournament 2004 Editor's Choice Edition (Part 1 of 3)

→˓","version": null,"date": "","size": "1 MB"

},{"manualUrl": "/downlink/unreal_tournament_2004_ece/en1installer4","downloaderUrl": "gogdownloader://unreal_tournament_2004_ece/

→˓installer_win_en","name": "Unreal Tournament 2004 Editor's Choice Edition (Part 2 of 3)

→˓","version": null,"date": "","size": "1.5 GB"

},{"manualUrl": "/downlink/unreal_tournament_2004_ece/en1installer5","downloaderUrl": "gogdownloader://unreal_tournament_2004_ece/

→˓installer_win_en","name": "Unreal Tournament 2004 Editor's Choice Edition (Part 3 of 3)

→˓","version": null,"date": "","size": "507 MB"

}]

}]

],"extras": [{"manualUrl": "/downlink/file/unreal_tournament_2004_ece/6093","downloaderUrl": "gogdownloader://unreal_tournament_2004_ece/6093","name": "manual (33 pages)","type": "manuals","info": 1,"size": "2 MB"

},{"manualUrl": "/downlink/file/unreal_tournament_2004_ece/6073","downloaderUrl": "gogdownloader://unreal_tournament_2004_ece/6073","name": "HD wallpapers","type": "wallpapers","info": 12,"size": "115 MB"

},{"manualUrl": "/downlink/file/unreal_tournament_2004_ece/6083","downloaderUrl": "gogdownloader://unreal_tournament_2004_ece/6083",

(continues on next page)

1.2. Account Management 9

Page 14: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"name": "avatars","type": "avatars","info": 8,"size": "1 MB"

}],"dlcs": [],"tags": [],"isPreOrder": false,"releaseTimestamp": 1227585600,"messages": [],"changelog": null,"forumLink": "https://embed.gog.com/forum/unreal_series","isBaseProductMissing": false,"missingBaseProduct": null

}

GET /account/movieDetails/(int: movie_id).jsonReturns detailed information about a movie.

Example request:

GET /account/movieDetails/1207665463.json HTTP/1.1Host: embed.gog.com

Example response:

{"title": "Art of Playing, The","backgroundImage": "//images-1.gog.com/

→˓a3e48e4e370e2e7e9cdf648b712ff0506b994b404b64993e3fab4934294a4890","cdKey": "","textInformation": "","downloads": [{"manualUrl": "/downlink/the_art_of_playing/en1video1","downloaderUrl": "gogdownloader://the_art_of_playing/video_en1video1","playerUrl": "http://www.gog.com/video/the_art_of_playing/en1video1","name": "The Art of Playing (1080p)","size": "1.1 GB"

},{"manualUrl": "/downlink/the_art_of_playing/en1video2","downloaderUrl": "gogdownloader://the_art_of_playing/video_en1video2","playerUrl": "http://www.gog.com/video/the_art_of_playing/en1video2","name": "The Art of Playing (720p)","size": "382 MB"

},{"manualUrl": "/downlink/the_art_of_playing/en1video3","downloaderUrl": "gogdownloader://the_art_of_playing/video_en1video3","playerUrl": "http://www.gog.com/video/the_art_of_playing/en1video3","name": "The Art of Playing (576p)","size": "163 MB"

}],"extras": [

(continues on next page)

10 Chapter 1. Contents

Page 15: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

{"manualUrl": "/downlink/file/the_art_of_playing/34143","downloaderUrl": "gogdownloader://the_art_of_playing/34143","name": "wallpaper","type": "wallpapers","info": 1,"size": "1 MB"

},{"manualUrl": "/downlink/file/the_art_of_playing/34213","downloaderUrl": "gogdownloader://the_art_of_playing/34213","name": "trailer","type": "video","info": 1,"size": "92 MB"

},{"manualUrl": "/downlink/file/the_art_of_playing/34553","downloaderUrl": "gogdownloader://the_art_of_playing/34553","name": "subtitles (English)","type": "game add-ons","info": 1,"size": "1 MB"

},{"manualUrl": "/downlink/file/the_art_of_playing/37973","downloaderUrl": "gogdownloader://the_art_of_playing/37973","name": "subtitle pack","type": "game add-ons","info": 1,"size": "1 MB"

}],"dlcs": [],"tags": [],"isPreOrder": false,"releaseTimestamp": 693612000,"messages": [],"changelog": null,"forumLink": "https://www.gog.com/forum/movies","isBaseProductMissing": false,"missingBaseProduct": null

}

GET /user/games_rating.jsonReturns the products the account has rated. Rating numbers are stars * 10

Example request:

GET /user/games_rating.json HTTP/1.1Host: embed.gog.com

Example response:

{"games_rating": {

"1207658957": 40,

(continues on next page)

1.2. Account Management 11

Page 16: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"1207659032": 50},"checksum": "175d07086bff9322646f1dad2749483e"

}

GET /user/review_votes.jsonReturns review IDs the user has voted on.

Example request:

GET /user/review_votes.json HTTP/1.1Host: embed.gog.com

Example response:

{"reviews": [123456,1112223

],"checksum": "76c03aa67251e46db3271adf4641b815"

}

POST /account/hideProduct/(int: product_id)Hides a product from your library.

Example request:

POST /user/hideProduct/1430740458 HTTP/1.1Host: embed.gog.com

Example response:

{}

POST /account/revealProduct/(int: product_id)Unhides a product from your library.

Example request:

POST /user/revealProduct/1430740458 HTTP/1.1Host: embed.gog.com

Example response:

{}

1.2.3 Wishlist

GET /user/wishlist.jsonReturns the wishlist of the account.

Example request:

GET /user/wishlist.json HTTP/1.1Host: embed.gog.com

12 Chapter 1. Contents

Page 17: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Example response:

{"wishlist": {

"1207658750": true,"1207658928": true,"1207658986": true,"1207659002": true,"1207659023": true,"1437553673": true,"1440407371": true,"1452863689": true,"1893001152": true,"1948823323": true

},"checksum": "e7c70b9b758318ed2f08b4450272296c"

}

GET /user/wishlist/add/(int: product_id)Adds a product to the wishlist and returns the new list.

Example request:

GET /user/wishlist/add/1207658750 HTTP/1.1Host: embed.gog.com

Example response:

Same as GET /user/wishlist.json

GET /user/wishlist/remove/(int: product_id)Removes a product from the wishlist and returns the new list.

Example request:

GET /user/wishlist/remove/1207658750 HTTP/1.1Host: embed.gog.com

Example response:

Same as GET /user/wishlist.json

1.2.4 Tags

POST /account/tags/attachAdds a tag to a product.

Query Parameters

• product_id (int) – Product ID to add the tag to

• tag_id (int) – ID of the tag to attach

Example request:

POST /account/tags/attach?product_id=1430740458&tag_id=301045732 HTTP/1.1Host: embed.gog.com

Example response:

1.2. Account Management 13

Page 18: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

{"success": true

}

POST /account/tags/detachRemoves a tag to a product.

Query Parameters

• product_id (int) – Product ID to remote the tag from

• tag_id (int) – ID of the tag to detach

Example request:

POST /account/tags/detach?product_id=1430740458&tag_id=301045732 HTTP/1.1Host: embed.gog.com

Example response:

{"success": true

}

POST /account/tags/addCreates a new tag.

Query Parameters

• name (str) – Name of the new tag

Example request:

POST /account/tags/add?name=MYTAG HTTP/1.1Host: embed.gog.com

Example response:

{"id": "301045732"

}

POST /account/tags/deleteDeletes a tag.

Query Parameters

• tag_id (int) – ID of the tag to delete

Example request:

POST /account/tags/delete?tag_id=301045732 HTTP/1.1Host: embed.gog.com

Example response:

{"status": "deleted"

}

14 Chapter 1. Contents

Page 19: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

POST /account/tags/updateUpdates the tag list. Data isn’t actually posted but included as a query parameter (wat!?).

Query Parameters

• tags (json) – URL-encoded json data of the tags

Example request:

POST /account/tags/update?tags=%5B%7B%22id%22:%22301045732%22... HTTP/1.1Host: embed.gog.com

Example request data:

This is the urldecoded content of the query parameter.

[{"id": "372082953","name": "MYTAG"

}, {"id": "243982903","name": "COMPLETED","productCount": "12"

}, {"id": "243982893","name": "NEXT TO PLAY","productCount": "4"

}, {"id": "243982883","name": "BACKLOG","productCount": "0"

}, {"id": "243982873","name": "FAVORITE","productCount": "0"

}]

Example response:

{"status": "updated"

}

1.2.5 Settings

GET /account/save_birthday/(str: date)Sets the birthday.

Parameters

• date – Date in ISO 8601 format

Example request:

GET /account/save_birthday/2000-12-31 HTTP/1.1Host: embed.gog.com

Example response:

1.2. Account Management 15

Page 20: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

{}

GET /account/save_country/(str: country)Sets the country.

Parameters

• country – Country as ISO 3166 code

Example request:

GET /account/save_country/AT HTTP/1.1Host: embed.gog.com

Example response:

{}

GET /account/save_newsletter_subscription/(bool: subscribed)Enable notifications for releases and announcements.

Parameters

• subscribed – 0 (unsubscribe), 1 (subscribe)

Example request:

GET /account/save_newsletter_subscription/1 HTTP/1.1Host: embed.gog.com

Example response:

{}

GET /account/save_promo_subscription/(bool: subscribed)Enable notifications for promos and deals.

Parameters

• subscribed – 0 (unsubscribe), 1 (subscribe)

Example request:

GET /account/save_promo_subscription/1 HTTP/1.1Host: embed.gog.com

Example response:

{}

GET /account/save_wishlist_notification/(bool: subscribed)Enable notifications for whishlist items on sale.

Parameters

• subscribed – 0 (unsubscribe), 1 (subscribe)

Example request:

GET /account/save_wishlist_notification/1 HTTP/1.1Host: embed.gog.com

16 Chapter 1. Contents

Page 21: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Example response:

{}

GET /account/save_sharing_wishlist/(int: privacy)Sets if the wishlist is public.

Parameters

• privacy – Can be 0 (nobody), 1 (everyone) or 2 (friends only)

Example request:

GET /account/save_sharing_wishlist/1 HTTP/1.1Host: embed.gog.com

Example response:

{}

GET /account/save_chat_privacy/(int: privacy)Sets the chat privacy setting.

Parameters

• privacy – Can be 0 (nobody), 1 (anyone) or 2 (friends only)

Example request:

GET /account/save_chat_privacy/1 HTTP/1.1Host: embed.gog.com

Example response:

{}

GET /account/save_search_privacy/(bool: privacy)Changes if the user can be found by name or email.

Parameters

• privacy –

– 0 (search disabled)

– 1 (search enabled)

Example request:

GET /account/save_search_privacy/1 HTTP/1.1Host: embed.gog.com

Example response:

{}

POST /account/logout_all_sessionsExample request:

GET /account/logout_all_sessions HTTP/1.1Host: embed.gog.com

1.2. Account Management 17

Page 22: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Example response:

{}

GET /user/changeCurrency/(str: currency)Changes the default currency.

Parameters

• currency (str) – ISO 4217 currency code, currently available: USD, EUR, GBP, AUD,RUB, PLN, CAD, CHF, NOK, SEK and DKK. Please only use the ones listed in GET /userData.json.

Example request:

GET /user/changeCurrency/EUR HTTP/1.1Host: embed.gog.com

Example response:

{}

GET /user/changeLanguage/(str: language)Changes the used locale.

Parameters

• language (str) – Language to use, possible values: de-DE, en-US, fr-FR, pt-BR, ru-RU,zh-Hans

Example request:

GET /user/changeLanguage/de HTTP/1.1Host: embed.gog.com

Example response:

{}

POST /account/save_shelf_background/(str: background_name)Sets the library shelf style.

Parameters

• background_name (str) – One of wood, mate_black, glass, chrome, white, pi-ano_black.

Example request:

GET /account/save_shelf_background/glass HTTP/1.1Host: embed.gog.com

Example response:

{}

POST /account/avatarUpload a profile avatar. This request uses the login.gog.com domain instead of the regular gog.com.

Example request:

18 Chapter 1. Contents

Page 23: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

POST /account/avatar HTTP/1.1Host: login.gog.com

Content-Disposition: form-data; name="files[]"; filename="avatar.png"Content-Type: image/png

Example response:

{"avatars": {"small": "https:\/\/images.gog.com\/

→˓d7d8e3ed8ad2d9fd3557c83c4237a913b14e621c84e21fab594a9d961cd98fe4_avs.jpg","small_2x": "https:\/\/images.gog.com\/

→˓d7d8e3ed8ad2d9fd3557c83c4237a913b14e621c84e21fab594a9d961cd98fe4_avs2.jpg","medium": "https:\/\/images.gog.com\/

→˓d7d8e3ed8ad2d9fd3557c83c4237a913b14e621c84e21fab594a9d961cd98fe4_avm.jpg","medium_2x": "https:\/\/images.gog.com\/

→˓d7d8e3ed8ad2d9fd3557c83c4237a913b14e621c84e21fab594a9d961cd98fe4_avm2.jpg","large": "https:\/\/images.gog.com\/

→˓d7d8e3ed8ad2d9fd3557c83c4237a913b14e621c84e21fab594a9d961cd98fe4_avl.jpg","large_2x": "https:\/\/images.gog.com\/

→˓d7d8e3ed8ad2d9fd3557c83c4237a913b14e621c84e21fab594a9d961cd98fe4_avl2.jpg"}

}

1.2.6 Friends

POST /friends/searchSearch for GOG users.

Example request:

POST /friends/search HTTP/1.1Host: embed.gog.com

{"query": "Yepoleb"

}

Example response:

{"id": "48628349971017","galaxyUserId": "48628349957132247","username": "Yepoleb","userSince": 1449237763,"avatars": {

"small": "https:\/\/images.gog.com\/→˓d7d8e3ed8ad2d9fd3557c83c4237a913b14e621c84e21fab594a9d961cd98fe4_avs.jpg",

"small2x": "https:\/\/images.gog.com\/→˓d7d8e3ed8ad2d9fd3557c83c4237a913b14e621c84e21fab594a9d961cd98fe4_avs2.jpg",

"medium": "https:\/\/images.gog.com\/→˓d7d8e3ed8ad2d9fd3557c83c4237a913b14e621c84e21fab594a9d961cd98fe4_avm.jpg",

"medium2x": "https:\/\/images.gog.com\/→˓d7d8e3ed8ad2d9fd3557c83c4237a913b14e621c84e21fab594a9d961cd98fe4_avm2.jpg",

"large": "https:\/\/images.gog.com\/→˓d7d8e3ed8ad2d9fd3557c83c4237a913b14e621c84e21fab594a9d961cd98fe4_avl.jpg",(continues on next page)

1.2. Account Management 19

Page 24: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"large2x": "https:\/\/images.gog.com\/→˓d7d8e3ed8ad2d9fd3557c83c4237a913b14e621c84e21fab594a9d961cd98fe4_avl2.jpg"}

}

GET /friends/invite/(int: user_id)Send a friend invite to a user. Warning: Response is not an object and may break certain JSON decoders.

Example request:

POST /friends/invite/17081829469374 HTTP/1.1Host: embed.gog.com

Example response:

"ok"

GET /friends/remove/(int: user_id)Removes a friend from your friends list. Warning: Response is not an object and may break certain JSONdecoders.

Example request:

POST /friends/remove/17081829469374 HTTP/1.1Host: embed.gog.com

Example response:

"ok"

GET /friends/invites/(int: user_id)/acceptAccepts a friend invite. Warning: Response is not an object and may break certain JSON decoders.

Example request:

POST /friends/invites/17081829469374/accept HTTP/1.1Host: embed.gog.com

Example response:

"ok"

GET /friends/invites/(int: user_id)/declineDeclines a friend invite. Warning: Response is not an object and may break certain JSON decoders.

Example request:

POST /friends/invites/17081829469374/decline HTTP/1.1Host: embed.gog.com

Example response:

"ok"

GET /users/(int: user_id)/blockBlock communication from a user. Warning: Response is not an object and may break certain JSONdecoders.

20 Chapter 1. Contents

Page 25: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Example request:

POST /friends/17081829469374/block HTTP/1.1Host: embed.gog.com

Example response:

"ok"

GET /users/(int: user_id)/unblockUnblock communication from a user. Warning: Response is not an object and may break certain JSONdecoders.

Example request:

POST /friends/17081829469374/unblock HTTP/1.1Host: embed.gog.com

Example response:

"ok"

1.3 Listing

Endpoints used to list games and movies. Contrary to their names, they don’t actually need to filter anything.

GET /games/ajax/filteredSearches for all available products matching the given criterias. Movies don’t support the parameters category,devpub, feature, release, system.

Query Parameters

• category – Game genre

• devpub – Developer or publisher

• feature – Game features

• language – Language

• mediaType – Game or movie

• page – Page number

• price – Price range

• release – Release timeframe

• search – Search string

• sort – Sort order

• system – OS

• limit – Max results

Example request:

GET /games/ajax/filtered?mediaType=game&search=Witcher HTTP/1.1Host: embed.gog.com

1.3. Listing 21

Page 26: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Example response:

{"products": [

{"customAttributes": [],"price": {"amount": "29.99","baseAmount": "29.99","finalAmount": "29.99","isDiscounted": false,"discountPercentage": 0,"discountDifference": "0.00","symbol": "C","isFree": false,"discount": 0,"isBonusStoreCreditIncluded": false,"bonusStoreCreditAmount": "0.00"

},"isDiscounted": false,"isInDevelopment": false,"id": 1207664663,"releaseDate": 1431982800,"availability": {"isAvailable": true,"isAvailableInAccount": true

},"salesVisibility": {"isActive": true,"fromObject": {"date": "2015-05-19 02:00:00.000000","timezone_type": 3,"timezone": "Europe/Nicosia"

},"from": 1431990000,"toObject": {

"date": "2020-12-31 23:59:59.000000","timezone_type": 3,"timezone": "Europe/Nicosia"

},"to": 1609451999

},"buyable": true,"title": "Witcher 3: Wild Hunt, The ","image": "//images-3.gog.com/

→˓60c724a052275a049d857d53957dc38e9347742f52372bb956d992b43efa8fb5","url": "/game/the_witcher_3_wild_hunt","supportUrl": "/support/the_witcher_3_wild_hunt","forumUrl": "/forum/general","worksOn": {"Windows": true,"Mac": false,"Linux": false

},"category": "Role-playing","originalCategory": "Role-playing","rating": 49,"type": 2,

(continues on next page)

22 Chapter 1. Contents

Page 27: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"isComingSoon": false,"isPriceVisible": true,"isMovie": false,"isGame": true,"slug": "the_witcher_3_wild_hunt"

}],"ts": null,"page": "1","totalPages": 1,"totalResults": "1","totalGamesFound": 1,"totalMoviesFound": 0

}

GET /account/getFilteredProductsSearches for products owned by the user matching the given criterias. Movies don’t support the parameterscategory, feature, system.

Query Parameters

• category – Genre

• feature – Feature

• hiddenFlag – Show hidden products

• language – Language

• mediaType – Game or movie

• page – Page number

• search – Search string

• sortBy – Sort order

• system – OS

• tags – Tags

• totalPages – Total Pages

Example request:

GET /account/getFilteredProducts?mediaType=1&search=Shadowrun HTTP/1.1Host: embed.gog.com

Example response:

{"sortBy": "date_purchased","page": 1,"totalProducts": 1,"totalPages": 1,"productsPerPage": 100,"contentSystemCompatibility": null,"moviesCount": 1,"tags": [{"id": "243982903",

(continues on next page)

1.3. Listing 23

Page 28: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"name": "COMPLETED","productCount": "0"

},{

"id": "243982893","name": "NEXT TO PLAY","productCount": "0"

},{

"id": "243982883","name": "BACKLOG","productCount": "0"

},{

"id": "243982873","name": "FAVORITE","productCount": "0"

}],"products": [{"isGalaxyCompatible": true,"tags": [],"id": 1207660413,"availability": {"isAvailable": true,"isAvailableInAccount": true

},"title": "Shadowrun Returns","image": "//images-2.gog.com/

→˓6c35ecb988f57725cc0f385acf860241082da16eda9fab66115f4da883dae3d1","url": "/game/shadowrun_returns","worksOn": {"Windows": true,"Mac": true,"Linux": true

},"category": "Role-playing","rating": 41,"isComingSoon": false,"isMovie": false,"isGame": true,"slug": "shadowrun_returns","updates": 0,"isNew": false,"dlcCount": 0,"releaseDate": {"date": "2013-07-25 00:00:00.000000","timezone_type": 3,"timezone": "Europe/Nicosia"

},"isBaseProductMissing": false,"isHidingDisabled": false,"isInDevelopment": false,"isHidden": false

}],

(continues on next page)

24 Chapter 1. Contents

Page 29: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"updatedProductsCount": 0,"hiddenUpdatedProductsCount": 0,"appliedFilters": {

"tags": null},"hasHiddenProducts": false

}

GET /account/wishlist/searchSearches for games in the wishlist. Works the same as GET /account/getFilteredProducts, but addsa price and removes the tags filter.

Query Parameters

• price (int) – Price range of the product

GET /public_wishlist/(int: user_id)/searchSearches for games in the wishlist of a different user. Works the same as GET /account/wishlist/search.

1.4 Store

TODO

1.4.1 Cart

GET /cart

GET /cart/add/(int: game_id)Adds a single item to the cart.

POST /cart/addAdds multiple items to the cart.

Request JSON Object

• product_ids (array) – Items to add

GET /cart/add/series/(int: series_id)Add a series to the cart.

GET /cart/remove/(int: game_id)Removes an item from the cart.

GET /checkoutRedirects to order page

GET /checkout/manual/(int: product_id)TODO

1.4.2 Order

ANY /checkout/order/(int: order_id)/changeCurrency/str: currency

1.4. Store 25

Page 30: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

ANY /checkout/order/(int: order_id)/add/int: game_id

POST /checkout/order/(int: order_id)/remove/int: game_id Empty request content

ANY /checkout/order/(int: order_id)/enableStoreCredit

ANY /checkout/order/(int: order_id)/disableStoreCredit

ANY /checkout/order/(int: order_id)/setAsGift

ANY /checkout/order/(int: order_id)/setAsNotGift

ANY /payment/process/(int: order_id)

ANY /payment/ping/(int: order_id)

ANY /order/checkStatus/(int: order_id)

ANY /account/settings/orders/resend

1.4.3 History

GET /account/settings/orders/data

ANY /account/settings/orders/resend

1.4.4 Wallet

ANY /wallet/recommendedProducts

POST /wallet/fundsCreates an order to add wallet funds.

Request JSON Object

• amount (int) – Amount of money to add in cents

• currency (str) – Currency code

Example request:

POST /wallet/funds HTTP/1.1Host: embed.gog.com

{"amount": 1000,"currency": "EUR"

}

Example response:

{"redirectToUrl": "/checkout/35a99729ca0d"

}

GET /wallet/transactions/(str: currency)/int: page Gets the wallet transaction history.

Example request:

26 Chapter 1. Contents

Page 31: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

GET /wallet/transactions/EUR/1 HTTP/1.1Host: embed.gog.com

Example response:

{"list": [

{"orderId": "2E354EEF0EF2","date": 1481166490,"name": "Brothers: A Tale of Two Sons - fair price package","negative": false,"balanceChange": "0.20","endBalance": {"user_id": "48628349971017","currency_code": "EUR","amount": 20,"absolute_amount": 20,"formattedAbsoluteAmount": "0.20","formattedAmount": "0.20","lastRecharge": null,"last_notification_sent": null,"expirationDate": null

},"currency": "EUR"

}],"count": 1,"pageSize": 30

}

1.5 Reviews

GET /reviews/product/(int: game_id).jsonReturns the reviews for a game.

Query Parameters

• page – Page number

Example request:

GET /reviews/product/1207659103.json HTTP/1.1Host: embed.gog.com

Example response:

{"reviews": [{"id": 12345,"title": "Really Good Game","teaser": "Best Point&amp;Click game ever.","description": "Best Point&amp;Click game ever. I like it.","author": {"name": "Yepoleb",

(continues on next page)

1.5. Reviews 27

Page 32: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"avatarPath": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_avm.jpg",

"id": "48628349971017"},"helpfulVotes": 182,"totalVotes": 218,"rating": 50,"added": 1238880457,"edited": -62169992008

}],"ts": null,"page": 1,"totalPages": 19,"totalResults": "92"

}

POST /reviews/vote/review/(int: review_id).jsonVote if an individual review is helpful.

Parameters

• review_id (int) – ID of the review to be voted on

Request JSON Object

• wasHelpful (bool) – Whether the review was helpful or not

Example request:

POST /reviews/vote/review/1234567.json HTTP/1.1Host: embed.gog.comContent-Type: application/json;charset=UTF-8

{"wasHelpful": true

}

Example response:

{}

POST /reviews/report/review/(int: review_id).jsonReports a review.

Example request:

GET /reviews/report/review/10123.json HTTP/1.1Host: embed.gog.comContent-Type: application/json;charset=UTF-8

{}

Example response:

{"reported": true

}

28 Chapter 1. Contents

Page 33: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

POST /reviews/rate/product/(int: game_id).jsonSubmits a game rating.

Request JSON Object

• rating (int) – Rating in stars * 10

Example request:

GET /reviews/rate/product/1436869408.json HTTP/1.1Host: embed.gog.comContent-Type: application/json;charset=UTF-8

{"rating": 40

}

Example response:

{}

POST /reviews/add/product/(int: game_id).jsonSubmits a game review.

TODO

1.6 GOG Connect

GET /api/v1/users/(int: user_id)/gogLink/steam/linkedAccountReturns information about accounts linked through GOG connect.

Example request:

GET /api/v1/users/48628349971017/gogLink/steam/linkedAccount HTTP/1.1Host: embed.gog.com

Example response:

{"href": "https://embed.gog.com/api/v1/users/48628349971017/gogLink/steam/

→˓linkedAccount","user": {

"status": "linked","gogUsername": "Yepoleb","gogAvatar": "https://images.gog.com/

→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d","steamUsername": "Yepoleb","steamAvatar": "https://steamcdn-a.akamaihd.net/steamcommunity/public/images/

→˓avatars/be/beed19c0f5dcf844ca2b89cacce7ed49a2729e7b_medium.jpg"},"exchangableSteamProducts": "https://embed.gog.com/api/v1/users/48628349971017/

→˓gogLink/steam/exchangeableProducts"}

GET /api/v1/users/(int: user_id)/gogLink/steam/exchangeableProductsReturns list of product IDs currently on GOG Connect and whether they are available to claim.

Example request:

1.6. GOG Connect 29

Page 34: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

GET /api/v1/users/809081000454/gogLink/steam/exchangeableProducts HTTP/1.1Host: embed.gog.com

Example response:

{"href": "https://www.gog.com/api/v1/users/809081000454/gogLink/steam/

→˓exchangeableProducts","items": {

"1207658744": {"id": 1207658744,"status": "imported"

},"1207658796": {"id": 1207658796,"status": "readyToLink"

},"1207658797": {"id": 1207658797,"status": "unavailable"

},}

}

GET /api/v1/users/(int: user_id)/gogLink/steam/synchronizeUserProfileInstructs Connect to scan a user’s Steam account for eligible games.

Example request:

GET /api/v1/users/48628349971017/gogLink/steam/synchronizeUserProfile HTTP/1.1Host: embed.gog.com

Example response:

No content

GET /api/v1/users/(int: user_id)/gogLink/steam/claimProductsClaims the available games.

Example request:

GET /api/v1/users/48628349971017/gogLink/steam/claimProducts HTTP/1.1Host: embed.gog.com

Example response:

TODO

1.7 Galaxy APIs

1.7.1 api.gog.com

GET /products/(int: product_id)Returns information about a product.

Query Parameters

30 Chapter 1. Contents

Page 35: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

• expand (str) – Comma separated list of additional sections to request. Possible values:downloads, expanded_dlcs, description, screenshots, videos, related_products, changelog

• locale (str) – Locale code

Example request:

GET /products/1207658691?expand=downloads,expanded_dlcs,description,screenshots,→˓videos,related_products,changelog HTTP/1.1Host: api.gog.com

Example response:

{"id": 1207658691,"title": "Unreal Tournament 2004 Editor's Choice Edition","purchase_link": "https://www.gog.com/checkout/manual/1207658691","slug": "unreal_tournament_2004_ece","content_system_compatibility": {

"windows": true,"osx": false,"linux": false

},"languages": {

"en": "English"},"links": {

"purchase_link": "https://www.gog.com/checkout/manual/1207658691","product_card": "https://www.gog.com/game/unreal_tournament_2004_ece","support": "https://www.gog.com/support/unreal_tournament_2004_ece","forum": "https://www.gog.com/forum/unreal_series"

},"in_development": {

"active": false,"until": null

},"is_secret": false,"game_type": "game","is_pre_order": false,"release_date": "2008-11-25T06:00:00+0200","images": {

"background": "//images-3.gog.com/→˓ebed1d5546a4fa382d7d36db8aee7f298eac7db3a8dc2f4389120b5b7b3155a9.jpg",

"logo": "//images-3.gog.com/→˓b6fff8c1a9600816e8c250ec6959def0e996f960b8c5083fae313c242c63ed84_glx_logo.jpg",

"logo2x": "//images-2.gog.com/→˓b6fff8c1a9600816e8c250ec6959def0e996f960b8c5083fae313c242c63ed84_glx_logo_2x.jpg→˓",

"icon": "//images-1.gog.com/→˓10604b810f6c7121fc7072a43a642d400047c25196ca171afef931f0064623ad.png",

"sidebarIcon": "//images-2.gog.com/→˓10604b810f6c7121fc7072a43a642d400047c25196ca171afef931f0064623ad_sbicon.png",

"sidebarIcon2x": "//images-4.gog.com/→˓10604b810f6c7121fc7072a43a642d400047c25196ca171afef931f0064623ad_sbicon_2x.png"},"dlcs": [],"downloads": {

"installers": [{

(continues on next page)

1.7. Galaxy APIs 31

Page 36: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"id": "installer_windows_en","name": "Unreal Tournament 2004 Editor's Choice Edition","os": "windows","language": "en","language_full": "English","version": null,"total_size": 2105540608,"files": [{"id": "en1installer3","size": 1048576,"downlink": "https://api.gog.com/products/1207658691/downlink/

→˓installer/en1installer3"},{"id": "en1installer4","size": 1572864000,"downlink": "https://api.gog.com/products/1207658691/downlink/

→˓installer/en1installer4"},{"id": "en1installer5","size": 531628032,"downlink": "https://api.gog.com/products/1207658691/downlink/

→˓installer/en1installer5"}

]}

],"patches": [],"language_packs": [],"bonus_content": [{"id": 6093,"name": "manual (33 pages)","type": "manuals","count": 1,"total_size": 2097152,"files": [{"id": 6093,"size": 2097152,"downlink": "https://api.gog.com/products/1207658691/downlink/product_

→˓bonus/6093"}

]}

]},"expanded_dlcs": [],"description": {

"lead": "","full": "","whats_cool_about_it": ""

},"screenshots": [{

(continues on next page)

32 Chapter 1. Contents

Page 37: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"image_id":→˓"de2a58c68c63b5a60603394ab8fdb4c66810807671d5985bce958c566a02ef08",

"formatter_template_url": "https://images-4.gog.com/→˓de2a58c68c63b5a60603394ab8fdb4c66810807671d5985bce958c566a02ef08_{formatter}.png→˓",

"formatted_images": [{"formatter_name": "ggvgt","image_url": "https://images-3.gog.com/

→˓de2a58c68c63b5a60603394ab8fdb4c66810807671d5985bce958c566a02ef08_ggvgt.jpg"},{"formatter_name": "ggvgt_2x","image_url": "https://images-2.gog.com/

→˓de2a58c68c63b5a60603394ab8fdb4c66810807671d5985bce958c566a02ef08_ggvgt_2x.jpg"},{"formatter_name": "ggvgm","image_url": "https://images-2.gog.com/

→˓de2a58c68c63b5a60603394ab8fdb4c66810807671d5985bce958c566a02ef08_ggvgm.jpg"},{"formatter_name": "ggvgm_2x","image_url": "https://images-2.gog.com/

→˓de2a58c68c63b5a60603394ab8fdb4c66810807671d5985bce958c566a02ef08_ggvgm_2x.jpg"},{"formatter_name": "ggvgl","image_url": "https://images-2.gog.com/

→˓de2a58c68c63b5a60603394ab8fdb4c66810807671d5985bce958c566a02ef08_ggvgl.jpg"},{"formatter_name": "ggvgl_2x","image_url": "https://images-4.gog.com/

→˓de2a58c68c63b5a60603394ab8fdb4c66810807671d5985bce958c566a02ef08_ggvgl_2x.jpg"}

]}

],"videos": [],"related_products": [],"changelog": null

}

GET /productsSame as GET /products/(int:product_id), but supports multiple products per request. Results arereturned as an array.

Query Parameters

• ids (str) – Up to 50 comma separated product IDs.

Example request:

GET products?ids=1444036272%2C1444035366 HTTP/1.1Host: api.gog.com

GET /products/(int: product_id)/

1.7. Galaxy APIs 33

Page 38: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

str: dl_url Returns secure url and chunklist for a file.

Example request:

GET /products/1207658691/downlink/installer/en1installer3 HTTP/1.1Host: api.gog.com

Example response:

{"downlink": "https://cdn.gog.com/secure/unreal_tournament_2004_ece/pc/setup_

→˓ut2004_2.0.0.6.exe?→˓a3c669cc2530fcf96b5599c0b5ceeb6a8179fe593c36d93e3396d982826ae9b366853042adc7efdeed599f74be21ec6615c731f9d25fc1e95c2711d7782b7beb2686dcd53a64440c04be87da3549947b72d90f5365ffaf1efcd51b633fc6c621ab3394540348f5b669f30782673bcc251a965dc82f33148b7e852070027e20b5eb56e05c460bd099cf17db03e4a9bdc01255ffe32bfd4f41019e8e7150694a5c&→˓fileExtForIe=.exe","checksum": "https://cdn.gog.com/secure/unreal_tournament_2004_ece/pc/setup_

→˓ut2004_2.0.0.6.exe.xml?→˓a3c669cc2530fcf96b5599c0b5ceeb6a8179fe593c36d93e3396d982826ae9b366853042adc7efdeed599f74be21ec6615c731f9d25fc1e95c2711d7782b7beb2686dcd53a64440c04be87da3549947b72d90f5365ffaf1efcd51b633fc6c621ab3394540348f5b669f30782673bcc251a965dc82f33148b7e852070027e20b5eb56e05c460bd099cf17db03e4a9bdc01255ffe32bfd4f41019e8e7150694a5c&→˓fileExtForIe=.exe"}

Example chunklist:

<file name="gog_tis_100_2.0.0.3.sh" available="1" notavailablemsg="" md5=→˓"8acedf66c0d2986e7dee9af912b7df4f" chunks="4" timestamp="2015-07-30 17:11:12"→˓total_size="36717998">

<chunk id="0" from="0" to="10485759" method="md5">→˓7e62ce101221ccdae2e9bff5c16ed9e0</chunk>

<chunk id="1" from="10485760" to="20971519" method="md5">→˓b80960a2546ce647bffea87f85385535</chunk>

<chunk id="2" from="20971520" to="31457279" method="md5">→˓5464b4499cd4368bb83ea35f895d3560</chunk>

<chunk id="3" from="31457280" to="36717997" method="md5">→˓0261b9225fc10c407df083f6d254c47b</chunk></file>

1.7.2 auth.gog.com

See Authentication

1.7.3 cfg.gog.com

GET /desktop-galaxy-client/config.jsonConfig for the Galaxy desktop client

Example request:

GET /desktop-galaxy-client/config.json HTTP/1.1Host: cfg.gog.com

Example response:

{"status" : "online","channel" : "production","talkInterval" : 600,

(continues on next page)

34 Chapter 1. Contents

Page 39: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"complainInterval" : 600,"timestamp" : 0,"end_points" : {

"files" : "galaxy-client-update.gog.com","products" : "products.gog.com","users" : "users.gog.com","auth" : "auth.gog.com","cdn" : "cdn.gog.com","productsDetails" : "api.gog.com","gameplay" : "gameplay.gog.com","gog-api" : "api.gog.com"

},"intervals" : {"quick" : 1,"presence" : 5,"short" : 10,"normal" : 60,"selfUpdateCheck" : 360,"long" : 1440,"eternity" : 10080

}}

GET /(str: project)/4/master/str: os.json Returns the file list for the Galaxy Updater

Parameters

• project (str) – Name of the application, possible values: desktop-galaxy-client,desktop-galaxy-commservice, desktop-galaxy-overlay, desktop-galaxy-peer, desktop-galaxy-updater.

• os (str) – Target OS, possible values: files-windows, files-osx

Example request:

GET /desktop-galaxy-peer/4/master/files-windows.json HTTP/1.1Host: cfg.gog.com

Example response:

{"baseURI": "https://galaxy-client-update.gog.com","files": [

{"hash": "cb1e2b55abc8fac1ce0dd83477a25109","path": "peer/msvc-15/GalaxyPeer.dll","resource": "GalaxyPeer/86194099/windows/peer/msvc-15/GalaxyPeer.dll.zip","size": 2223179

},{"hash": "72c2cbd0aff710a34c91596337767675","path": "peer/msvc-15/GalaxyPeer64.dll","resource": "GalaxyPeer/86194099/windows/peer/msvc-15/GalaxyPeer64.dll.zip","size": 3090331

}],"projectName": "GalaxyPeer",

(continues on next page)

1.7. Galaxy APIs 35

Page 40: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"symlinks": [],"timestamp": "86194099","version": "0.0.0.676"

}

1.7.4 chat.gog.com

GET /users/(int: user_id)/friendsReturns the list of friends.

Example request:

GET /users/48628349957132247/friends HTTP/1.1Host: chat.gog.com

Example response:

{"items": [{"user_id": "46988961654682898","username": "adaliabooks","is_employee": false,"images": {"medium": "https://images.gog.com/

→˓fc8ebd082c233822f091875ad36c1102a4a7d58be19b73e72c997de681aa40f1_avm.jpg","medium_2x": "https://images.gog.com/

→˓fc8ebd082c233822f091875ad36c1102a4a7d58be19b73e72c997de681aa40f1_avm2.jpg"}

},{

"user_id": "47510856674996320","username": "vidsgame","is_employee": false,"images": {"medium": "https://images.gog.com/

→˓4c208a9ee4766deaafce3189ab5c3afea54e85332efed1b3c563dc9954d70a8f_avm.jpg","medium_2x": "https://images.gog.com/

→˓4c208a9ee4766deaafce3189ab5c3afea54e85332efed1b3c563dc9954d70a8f_avm2.jpg"}

}]

}

GET /users/(int: user_id)/invitations

1.7.5 content-system.gog.com

GET /products/(int: product_id)/os/str: os/builds?generation=2 Returns the available builds for a game.

Parameters

• os (str) – Game OS. Possible values: windows, osx.

Query Parameters

36 Chapter 1. Contents

Page 41: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

• generation (int) – Max manifest version. Can be 1 or 2.

Example request:

GET /products/1207658930/os/windows/builds?generation=2 HTTP/1.1Host: content-system.gog.com

Example response:

{"total_count": 2,"count": 2,"items": [{"build_id": "48906206523382029","product_id": "1207658930","os": "windows","branch": null,"version_name": "3.5.0.26","tags": [],"public": true,"date_published": "2016-03-09T10:16:11+0000","generation": 2,"link": "https://cdn.gog.com/content-system/v2/meta/92/ab/

→˓92ab42631ff4742b309bb62c175e6306"},{"build_id": "3161","product_id": "1207658930","os": "windows","branch": null,"version_name": "","tags": [],"public": true,"date_published": "2015-05-12T09:21:36+0000","generation": 1,"link": "https://cdn.gog.com/content-system/v1/manifests/1207658930/windows/

→˓37794096/repository.json","legacy_build_id": 37794096

}],"has_private_branches": false

}

1.7.6 cdn.gog.com

GET /content-system/v1/manifests/(int: product_id)/str: os/int: build_id/repository.json TODO

Example request:

GET /content-system/v1/manifests/1207658930/windows/37794096/repository.json HTTP/→˓1.1Host: cdn.gog.com

Example response:

1.7. Galaxy APIs 37

Page 42: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

{"product": {"timestamp": 37794096,"depots": [

{"languages": [

"Neutral"],"size": "1255672","gameIDs": [

"1207658930"],"systems": ["Windows"

],"manifest": "a0e35d92-2a0f-40db-8a47-47cbbad0bac0.json"

},{"languages": [

"English"],"size": "24450928280","gameIDs": [

"1207658930"],"systems": ["Windows"

],"manifest": "463cd4b2-783e-447a-b17e-a68d601911e3.json"

},{"redist": "MSVC2010","executable": "__redist/MSVC2010/vcredist_x86.exe","argument": "/q","size": "0"

},{"redist": "dotNet4","executable": "__redist/dotNet4/dotNetFx40_Full_x86_x64.exe","argument": "/q /norestart","size": "0"

},{"redist": "DirectX","executable": "__redist/DirectX/DXSETUP.exe","argument": "/silent","size": "0"

}],"support_commands": [{"languages": ["Neutral"

],"executable": "/galaxy_the_witcher2_ee_3.5.0.26.exe","gameID": "1207658930","systems": [

(continues on next page)

38 Chapter 1. Contents

Page 43: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"Windows"],"argument": ""

}],"installDirectory": "The Witcher 2","rootGameID": "1207658930","gameIDs": [{"dependencies": [],"gameID": "1207658930","name": {"en": "The Witcher 2 - Assassins of Kings Enhanced Edition"

},"standalone": true

}],"projectName": "The Witcher 2 - Assassins of Kings Enhanced Edition"

},"version": 1

}

GET /content-system/v1/manifests/(int: product_id)/str: os/int: build_id/str: manifest_id.json Example request:

GET /content-system/v1/manifests/1207658930/windows/37794096/463cd4b2-783e-447a-→˓b17e-a68d601911e3.json HTTP/1.1Host: cdn.gog.com

Example response:

{"version": 1,"depot": {

"name": "The Witcher 2 - Assassins of Kings Enhanced Edition","files": [

{"url": "1207658930/main.bin","size": 128,"hash": "4d1daf474729e889b878b9bdef634f76","path": "/CookedPC/dlc_finishers.dzip","offset": 13944149457

},{"url": "1207658930/main.bin","size": 262,"hash": "3d1be6f328329f983075c124a00aca56","path": "/Launcher/Neutral/textbox_thumb_normal.PNG","offset": 24440333403

},{"url": "1207658930/main.bin","size": 417,"hash": "1ebd6e11f384c2d10c936155afbcfa13","path": "/Launcher/Neutral/textbox_arrow_pressed.PNG","offset": 24439929797

(continues on next page)

1.7. Galaxy APIs 39

Page 44: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

}]

}}

GET /content-system/v1/depots/(int: product_id)/windows/int: depot_id/str: file Example request:

GET /content-system/v1/depots/1207658930/windows/main.bin HTTP/1.1Host: cdn.gog.com

GET /content-system/v2/meta/(str: hash)Content-System V2 responses are zlib encoded (window size 15).

Example request:

GET /content-system/v2/meta/92/ab/92ab42631ff4742b309bb62c175e6306 HTTP/1.1Host: cdn.gog.com

Example repository response:

{"baseProductId": "1207658930","dependencies": [

"MSVC2010","MSVC2010_x64","DirectX","dotNet4"

],"depots": [

{"languages": ["*","en"

],"manifest": "79a1f5fd67f6d0cda22c51f1bd706b31","productId": "1207658930","size": 492

},{"languages": ["en"

],"manifest": "32eee2cc5e7da11f22de078eac90ba60","productId": "1207658930","size": 24452205574

}],"installDirectory": "The Witcher 2","offlineDepot": {

"languages": ["*"

],"manifest": "d1e0f516a5ca1eae591c5969c5044f0f","productId": "1207658930","size": 3046

},(continues on next page)

40 Chapter 1. Contents

Page 45: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"platform": "windows","products": [

{"name": "The Witcher 2 - Assassins of Kings Enhanced Edition","productId": "1207658930","script": "goggame-1207658930.script","temp_arguments": "","temp_executable": "galaxy_the_witcher2_ee_3.5.0.26.exe"

}],"version": 2

}

Example depot response:

{"depot": {"items": [{"chunks": [{"compressedMd5": "2e0dc2f5707ec0d88d570240ba918bb2","compressedSize": 9507293,"md5": "b013bcdcb851922f7e3357fd7b1828ed","size": 10485760

},{"compressedMd5": "a7e5eff7ef78707d2d059c724fa3dc8f","compressedSize": 9617323,"md5": "2b49c180539c7e188cd58e99b1b13f2d","size": 10485760

},{"compressedMd5": "a47d292fc498f740677e640146ad2097","compressedSize": 14655939,"md5": "c0a2bcb478957dd77d4eec9240f22d4f","size": 18954814

}],"md5": "7da354ae24cee72ee8ef64c42944f530","path": "CookedPC\\pack0.dzip","type": "DepotFile"

},{"chunks": [

{"compressedMd5": "f149b52a4ce1d025bbae57e8f8f7f662","compressedSize": 351,"md5": "53318eac2bcdac67c84dfde40e58006d","size": 1024

}],"flags": ["hidden"

],"path": "goggame-1207658930.info","type": "DepotFile"

(continues on next page)

1.7. Galaxy APIs 41

Page 46: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

},{"chunks": [

{"compressedMd5": "0812e871154b26f4737364abc193e2bc","compressedSize": 1177139,"md5": "143e880fed5ba39967f23785c3cc868b","size": 1288912

}],"flags": ["support","executable"

],"path": "galaxy_the_witcher2_ee_3.5.0.26.exe","type": "DepotFile"

}]

},"version": 2

}

1.7.7 gameplay.gog.com

GET /clients/(int: product_id)/users/int: user_id/achievements Gets the achievements list for a product.

Example request:

GET /clients/1437060567/users/48628349957132247/achievements HTTP/1.1Host: gameplay.gog.com

Example response:

{"total_count": 40,"limit": 1000,"page_token": "0","items": [{"achievement_id": "48497841707623054","achievement_key": "ACHIEVEMENT_NODEATH1","visible": true,"name": "Early Bird","description": "Complete level 1 «after a long night» without dying","image_url_unlocked": "https://images.gog.com/

→˓296efc79b94a252a68dcd4b3b073b94307930b160603b2083f2dcddb68353c1e_gac_60.jpg","image_url_locked": "https://images.gog.com/

→˓3af2d24d7c71bc7a36f69b16c2bdee9daa6fddb285ca2b02c0834e28ee669462_gac_60.jpg","date_unlocked": null

},{

"achievement_id": "48225958150521213","achievement_key": "ACHIEVE_AVALANCHE","visible": true,

(continues on next page)

42 Chapter 1. Contents

Page 47: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

(continued from previous page)

"name": "Run like hell","description": "Escape the collapsing mine without being crushed","image_url_unlocked": "https://images.gog.com/

→˓0c541a40fb04294dfca5b91a659217175bffcce1f13b4c8f875ac562b3c65f8c_gac_60.jpg","image_url_locked": "https://images.gog.com/

→˓e53817dce9e0a8f04b180999da9900b238217a9a4c0673d2848bc724c3698921_gac_60.jpg","date_unlocked": null

}]

}

GET /clients/(int: product_id)/users/int: user_id/sessions

GET /clients/(int: product_id)/users/int: user_id/friends_achievements_unlock_progresses

GET /clients/(int: product_id)/users/int: user_id/friends_sessions

1.7.8 presence.gog.com

POST /users/(int: user_id)/statusPings the server to mark you as online. Should be refreshed every 5 minutes. Keep in mind that the requestcontent is a url-encoded form, not JSON.

Form Parameters

• version – Version of the Galaxy client.

Example request:

POST /users/48628349957132247/status HTTP/1.1Host: presence.gog.comContent-Type: application/x-www-form-urlencoded

version=1.1.22.11

Example response:

No content

DELETE /users/(int: user_id)/statusMarks you as offline.

Example request:

DELETE /users/48628349957132247/status HTTP/1.1Host: presence.gog.com

Example response:

No content

OPTIONS /statusesNo idea what this does, but the official client uses it every time before doing the GET request. Reponse nevercontains any items.

Query Parameters

1.7. Galaxy APIs 43

Page 48: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

• user_id (str) – Comma separated list of user IDs to check the status of.

Example request:

OPTIONS /statuses?user_id=46988961654682898,46988886297334688,47510856674996320→˓HTTP/1.1Host: presence.gog.com

Example response:

{"items": [],"limit": 250,"total_count": 0

}

GET /statusesReturns the users who are online at the moment.

Query Parameters

• user_id (str) – Comma separated list of user IDs to check the status of.

Example request:

GET /statuses?user_id=46988961654682898,46988886297334688,47510856674996320 HTTP/→˓1.1Host: presence.gog.com

Example response:

{"total_count": 2,"limit": 250,"items": [{"data": {},"client_id": "46755278331571209","user_id": "46988961654682898"

},{

"data": {},"client_id": "46755278331571209","user_id": "46988886297334688"

}]

}

1.7.9 users.gog.com

GET /users/(int: user_id)Returns information about the user

Example request:

GET /users/48628349957132247 HTTP/1.1Host: users.gog.com

Example response:

44 Chapter 1. Contents

Page 49: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

{"id": "48628349957132247","username": "Yepoleb","created_date": "2015-12-04T14:02:42+00:00","avatar": {

"gog_image_id":→˓"3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d",

"small": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_avs.jpg",

"small_2x": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_avs2.jpg",

"medium": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_avm.jpg",

"medium_2x": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_avm2.jpg",

"large": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_avl.jpg",

"large_2x": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_avl2.jpg",

"sdk_img_32": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_sdk_img32.jpg",

"sdk_img_64": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_sdk_img64.jpg",

"sdk_img_184": "https://images.gog.com/→˓3f9e109ac09308f7d52c607c8571e63d5fb482acca499a83e767dfff7f00d57d_sdk_img184.jpg"},"is_employee": false

}

1.8 Game ID List

List of game’s names and their corresponding catalog IDs. Be aware that they sometimes don’t match up with thelibrary IDs. For debugging purposes only, do not hardcode this list into your client!

Game Name ID140 10963138661849: Gold Edition 12076644831954 Alcatraz 12076613331979 Revolution: Black Friday 14594414751979 Revolution: Black Friday - Original Soundtrack 16269893781nsane 12076586587th Guest, The 12076589997th Legion 12076607738-bit Armies 14594221148-bit Armies - Guardians Campaign 16847285098-bit Armies Soundtrack 21039248818-bit Hordes 11047392538-bit Hordes Soundtrack 109910295380 Days 144126953399 Levels to Hell 1207659178A Bird Story 1207666783A Boy and His Blob 1446645514

Continued on next page

1.8. Game ID List 45

Page 50: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDA Fistful of Gun 1442910587A Fistful of Gun Soundtrack 1443004526A Golden Wake 1207666213A New Beginning: Final Cut 1207659150A Story About My Uncle 1207664673Aarklash: Legacy 1207659983Act of War: Gold Edition 1427704829Advent Rising 1207658810Adventures of Shuggy, The 1207659763Afterlife: Chaos im Jenseits 1425308948Agarest: Generations of War 1207666943Agarest: Generations of War - Collector’s Edition 1207666993Agarest: Generations of War - Collector’s Edition Upgrade 1207667003Agarest: Generations of War 2 1438083997Agarest: Generations of War Zero 1426762679Agatha Christie - The ABC Murders 1452691186Age of Decadence, The 1440152251Age of Wonders 1207658883Age of Wonders 2: The Wizard’s Throne 1207658884Age of Wonders 3 1207660893Age of Wonders 3 - Deluxe Edition Upgrade 1207660883Age of Wonders 3 - Eternal Lords 1428937263Age of Wonders 3 - Golden Realms 1207665893Age of Wonders 3 Deluxe Edition 1207660903Age of Wonders: Shadow Magic 1207658885AI War Collection 1207665343AI War: DLC Pack 1207665333AI War: Fleet Command 1207665323Airline Tycoon Deluxe 1426519399Akalabeth: World of Doom 1207666073Al-Qadim: Der Fluch des Dschinn 1441096843Alan Wake 1207659037Alan Wake’s American Nightmare 1207659038Albedo: Eyes from Outer Space 1428071176Albion 1436955815Alice VR 1170675521Alien Breed + Tower Assault 1207658988Alien Shooter + Expansions 1207658898Alien Shooter 2: Reloaded 1207658711Aliens versus Predator Classic 2000 1207665883Alone in the Dark: The New Nightmare 1207658874Alone in the Dark: The Trilogy 1+2+3 1207658923Always Sometimes Monsters 1207664583American Conquest + Fight Back 1207659004American McGee’s Grimm 1207660243Amerzone: Das dunkle Vermächtnis 1207658847Amnesia: A Machine For Pigs 1207659443Amnesia: The Dark Descent 1207659259Among the Sleep 1207664603

Continued on next page

46 Chapter 1. Contents

Page 51: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDAn Elder Scrolls Legend: Battlespire 1440163341Anachronox 1207659012Anima: Gate of Memories 1183022406Anna’s Quest 1434460532Anno 1404: Gold Edition 1440426004Anno 1503 A.D. 1438074791Anno 1602 A.D. 1438168222Anno 1701 A.D. 1438075172Anodyne 1207659192Anomaly 2 1207667123Anomaly Defenders 1207664863Anomaly Korea 1207667133Anomaly Warzone Earth 1207659035Anomaly Warzone Earth Mobile Campaign 1207667143Another World: 20th Anniversary Edition 1207658845Anvil of Dawn 1207659224Apache Longbow 1207659006Apotheon 1422870624Aqua Kitty: Milk Mine Defender 1207660053AquaNox 1207658842AquaNox 2: Revelation 1207658851Aquaria 1430398832Aquatic Adventure of the Last Human, The 1452863102Aragami 1846445578Aragami - Collector’s Edition Upgrade 1951981053ArcaniA 1244052225ArcaniA: Fall of Setarrif 1282519889Arcanum: Of Steamworks and Magick Obscura 1207658829Armello DRM Free Edition 1427129887Armello Original Soundtrack - Wyld’s Call 1443432851Armikrog 1433157800Armikrog - Deluxe Edition 1433320879Army Men 1337763972Army Men II 1913968552Army Men: Toys In Space 1317709786Arx Fatalis 1207658680Ascendant 1207664543Ashes of the Singularity 1447327294Ashes of the Singularity - Epic Map Pack DLC 1903829877Ashes of the Singularity - Gauntlet DLC 1582150323Ashes of the Singularity - Oblivion DLC 1309756718Ashes of the Singularity - Overlord DLC 1460023188Ashes of the Singularity - Turtle Wars DLC 1543259894Ashes of the Singularity: Escalation 1581811358Assassin’s Creed®: Director’s Cut 1207659023Astebreed 1207665523Atlantis 2: Beyond Atlantis 1207658951Atlantis III: Die neue Welt 1207658958Atlantis: Das sagenhafte Abenteuer 1207658944

Continued on next page

1.8. Game ID List 47

Page 52: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDAvadon 2: The Corruption 1207660054Avadon 3: Hint Book & Extras 2002256003Avadon 3: The Warborn 1130879425Avadon: The Black Fortress 1207659166Avernum 2: Crystal Souls 1420648481Avernum: Escape From the Pit 1420630484Avernum: The Complete Saga 1207659156B-17 Flying Fortress: The Mighty 8th 1207658968Bad Mojo Redux 1207664623Baldur’s Gate II: Enhanced Edition 1207666373Baldur’s Gate: Enhanced Edition 1207666353Baldur’s Gate: Siege of Dragonspear 1459335293Baldur’s Gate: Siege of Dragonspear - Digital Deluxe Edition 1459337461Ball, The 1207659086Ballads of Reemus, The: When The Bed Bites 1207660373Balrum 1769415595Banished 1207660783Banner Saga 2, The 1775067436Banner Saga 2, The - Deluxe Edition 1312830628Banner Saga 2, The - Soundtrack 1750475420Banner Saga, The 1207660483Banner Saga, The - Soundtrack 1988489328Baphomets Fluch II: Die Spiegel der Finsternis 1207658707Baphomets Fluch: Der Engel des Todes 1207658973Baphomets Fluch: Der schlafende Drache 1207658708Baphomets Fluch: Der Sündenfall 1207660313Baphomets Fluch: The Director’s Cut 1207658900Bard’s Tale, The 1207659164Barony: Cursed Edition 1797331296Bastion 1423058311Batman - The Telltale Series 2140144872Battle Chasers: Nightwar 1345854066Battle Chess Special Edition 1207658676Battle Isle Platinum (includes Incubation) 1207658917Battle Isle: The Andosia War 1207658954Battle Realms + Winter of the Wolf 1207659111Battle Worlds: Kronos 1207660124Battlevoid: Harbinger 2047670766BattleZone 98 Redux 1454067812Battlezone 98 Redux - The Red Odyssey 1705475096Beatbuddy: Tale of the Guardians 1207662533Beneath a Steel Sky 1207658695Besiege 1447947499Betrayal at Krondor Pack 1207658850Beyond Divinity 1207658806Beyond Good & Evil™ 1207658746Big Pharma 1440407371Big Pharma: Marketing and Malpractice 1460728253Bio Menace 1449569170

Continued on next page

48 Chapter 1. Contents

Page 53: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDBioforge 1207659125Bionic Dues 1207664573BIT.TRIP BEAT 1460735408BIT.TRIP BEAT Soundtrack 1460735586BIT.TRIP CORE 1460735677BIT.TRIP CORE Soundtrack 1460735771BIT.TRIP FATE 1460737449BIT.TRIP FATE Soundtrack 1460737586BIT.TRIP FLUX 1460737726BIT.TRIP FLUX Soundtrack 1460737826BIT.TRIP Presents. . . Runner2: Future Legend of Rhythm Alien 1460734831BIT.TRIP Presents. . . Runner2: Future Legend of Rhythm Alien Soundtrack 1460735025BIT.TRIP Runner 1460734409BIT.TRIP Runner Soundtrack 1460734645BIT.TRIP VOID 1460735908BIT.TRIP VOID Soundtrack 1460737325Black Mirror 2 1207665043Black Mirror 3 1430743890Black Mirror: Der dunkle Spiegel der Seele 1207664913Blackguards 2 1207667233Blackguards Special Edition 1207660493Blackguards: Untold Legends 1207660813BLACKHOLE 1838054499BLACKHOLE: Complete Edition Upgrade 1638499829Blackwell Bundle 1207659050Blackwell Epiphany, The 1207664393Blade & Bones 1733644340Blake Stone: Aliens of Gold 1207658728Blake Stone: Planet Strike 1207658729BlazBlue Calamity Trigger 1207664163Blitzkrieg 2 Anthology 1207659119Blitzkrieg 3 1470599529Blitzkrieg Anthology 1207659071Block’hood 1457531523Blocks That Matter 1207665193Blood & Gold: Caribbean! 1448275717Blood 2: The Blood Group 1207658857Blood: One Unit Whole Blood 1207658856BloodNet 1207660453BloodRayne 1207658808BloodRayne 2 1207658809Bloodrayne: Betrayal 1446645601Bombshell 1437149977Bombshell Digital Deluxe Edition 1453909333Bombshell Digital Deluxe Edition Upgrade 1453909260Book of Unwritten Tales 2 Almanac Edition, The 1423824400Book of Unwritten Tales 2, The 1423758554Book of Unwritten Tales, The 1207659081Book Of Unwritten Tales: Die Vieh Chroniken 1207659148

Continued on next page

1.8. Game ID List 49

Page 54: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDBotanicula 1207659024Bounty Train 1455194922Bounty Train - Trainium Edition Upgrade 1741374013Braid 1461061433Braveland 1207662143Braveland Pirate 1446636874Braveland Wizard 1207667193Breach & Clear 1434013541Breach & Clear: DEADline Rebirth 1434036647Broforce 1470490225Broken Age: The Complete Adventure 1207662943Brothers: A Tale of Two Sons 1171070121Brutal Legend 1207659253Butcher 1689871374Caesar 3 1207658835Caesar™ IV 1460037487Californium 1455529924Call of Cthulhu: Prisoner of Ice 1432222749Call of Cthulhu: Shadow of the Comet 1431942210Call to Power 2 1207658838Candle 1411619402Cannon Fodder 1207658745Cannon Fodder 2 1207659169Capitalism 2 1207658722Capitalism Plus 1207658721Capsized 1207659151Caravan 1284364409Card City Nights 1446823701Carmageddon 2: Carpocalypse Now 1207659963Carmageddon Max Pack 1207659047Castles 1+2 1207658678Cat Lady, The 1207659201Catacombs Pack 1207659189Celestian Tales: Old North 1438597128Celestian Tales: Old North - Alternate Costume Pack 1430866932Celestian Tales: Old North - Howl of the Ravager 2100113209Celestian Tales: Old North - Original Soundtrack 1409132640Celtic Kings: Rage of War 1207658762Challenge of the Five Realms 1207665363Chantelise - A Tale of Two Sisters 1441875464Chaos Engine, The 1207659543Chaos Overlords 1207659228Chaos Reborn 1450347751Chaser 1207658894Chroma Squad 1430123043Chronicles of Riddick: Assault on Dark Athena, The 1207659070Chronology 1207664613Cities in Motion 1437043994Cities in Motion Collection 1437047329

Continued on next page

50 Chapter 1. Contents

Page 55: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDCities in Motion Collection Upgrade 1437046838CivCity: Rome 1367477034CLARC 1207664563Clive Barker’s Undying 1207659191Clustertruck 1661530902Codename Panzers: Phase One 1455704049Codename Panzers: Phase Two 1455704410Cognition: Game of the Year Edition 1207659633Cold Blood 1207658714Combat Chess 1207658734Combat Mission: Beyond Overlord 1207658821Commandos 2+3 1207658803Commandos Ammo Pack 1207658800Conflict: Desert Storm 1207658998Conga Master 1801442545Conquest of the New World 1207658646Conquest: Frontier Wars 1207659159Consortium: Master Edition, The 1207664203Convoy 1432538826Convoy Soundtrack 1432563933Cornerstone: The Song of Tyrim 1455119388Corpse Party 1460712231Cosmo’s Cosmic Adventure 1207665563Cosmonautica 1434623024Cossacks 3 1797227701Cossacks 3: Digital Deluxe 1227377909Cossacks 3: Digital Deluxe Upgrade 1792819207Cossacks Anthology 1207659005Cossacks II Anthology 1995005660Costume Quest 1207659132Craft The World 1443622961Craft The World - Sisters in Arms 1604919931Crashlands 1453474245Crashlands Soundtrack 1097611792Crawl 1207665263Creatures Exodus 1207658812Creatures Village 1207658814Creatures: The Albian Years 1207658813Crimsonland 1207665293Crimzon Clover: World Ignition 1207666643Crookz - The Big Heist 1436885539Crusader Kings Complete 1423233026Crusader: No Regret™ 1207658982Crusader: No Remorse™ 1207658933Crusaders of Might and Magic 1207658956Crypt of the NecroDancer 1432297044Crypt of the Necrodancer - Danny Baranowsky Soundtrack 1432925124Crypt of the Necrodancer - Extended Soundtrack 1432925592Crypt of the Necrodancer - Extended Soundtrack 2 1604766360

Continued on next page

1.8. Game ID List 51

Page 56: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDCrypt of the NecroDancer - Extras 1439377578Crysis Warhead® 1856743450Crysis® 1809223221Crystal Caves 1207665273Cultures 1+2 1207659152Cultures: Northland + 8th Wonder of the World 1207659199Curious Expedition, The 1453128328Cyberia 1420634392Cyberia 2: Resurrection 1430388542D&D Stronghold: Kingdom Simulator 1441096928D4: Dark Dreams Don’t Die - Season One 1433153796D4: Dark Dreams Don’t Die - Season One - Deluxe Edition 1433254764D4: Dark Dreams Don’t Die - Season One - Deluxe Edition Upgrade 1433254891D: The Game 1852354510Daikatana 1207659168Dangerous Dave Pack 1207659130Dark Eye: Chains of Satinav, The 1207659133Dark Fall 2: Lights Out 1207658830Dark Fall 3: Lost Souls 1207660703Dark Fall: The Journal 1207658804Dark Reign + Expansion 1207658904Dark Reign 2 1207658911Darkest Dungeon 1450711444Darkest Dungeon Soundtrack 1452238359Darkest Dungeon: Soundtrack Edition 1452693347Darkest Hour: A Hearts of Iron Game 1445505773Darklands 1207658972Darksiders II: Deathinitive Edition 1446463013Darksiders Warmastered Edition 1430901154Darkstar One 1207658704Darkstone 1207659025Darwinia 1207659014Das Schwarze Auge: Die Schicksalsklinge + Sternenschweif 1207658796Das Schwarze Auge: Schatten über Riva 1207658797Day of the Tentacle Remastered 1456922969Dead Space™ 1312818781Dead State: Reanimated 1207666333Dead Synchronicity Soundtrack 1428489988Dead Synchronicity: Tomorrow Comes Today 1427188253DEADBOLT 1457453536Deadlight: Director’s Cut 1230412827Deadlock II: Krieg der Altäre 1207660543Deadlock: Planetarische Eroberung 1207660533Deadly Premonition: Director’s Cut 1207660043Deadly Tower of Monsters, The 1458826738Deadnaut 1425559795Death Road to Canada 1960384075Death to Spies 1426249888Death to Spies: Moment of Truth 1426250716

Continued on next page

52 Chapter 1. Contents

Page 57: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDDeathtrap 1438167237Deathtrap Dungeon 1207659222DEFCON 1207659075Defender of the Crown 1207665703Defender’s Quest 1207659129Democracy 3: Africa 1459868439Democracy 3: Clones and Drones 1207666613Democracy 3: Electioneering 1288540119Democracy 3: Extremism 1207664493Democracy 3: Social Engineering 1207660663Demokratie 3 1207659953Deponia 1207659103Deponia 2: Chaos auf Deponia 1207659124Deponia 3: Goodbye Deponia 1207660233Deponia 4: Deponia Doomsday 1439969610Depths of Peril 1207660593Der IndustrieGigant II 1457348075Der Korsar Gold 1207659943Der verborgene Kontinent 1207658863Descent: Freespace Battle Pack 4Desktop Dungeons Enhanced Edition 1207664703Desktop Dungeons Goatperson 1207664713Desperados 2: Cooper’s Revenge 1207658985Desperados: Wanted Dead or Alive 1207658926Deus Ex 2: Invisible War 1207659068Deus Ex™ GOTY Edition 1207658995Devil’s Dare 1207666703Dex 1929434313Die By The Sword + Limb From Limb 1207658647Die Chroniken des Schwarzen Mondes 1432715627Die Rückkehr Zur Geheimnisvollen Insel 1207659084Die Siedler 2: 10th Anniversary 1207659163Die Siedler 4: Gold Edition 1207659254Die Siedler® - Aufstieg eines Königreichs - Gold Edition 1438268682Die Siedler® 2: Gold Edition 1207658786Die Siedler® 3: Ultimate Collection 1207659185Die Völker 1207658717Die Völker 2 Gold 1207658774Die Zwerge 1454499830Diluvion 1276899051Din’s Curse 1207665923Din’s Curse: Demon War 1207665933Disciples 2 Gold 1207658697Disciples: Sacred Lands Gold 1207658683Disney Aladdin 1364995551Disney The Jungle Book 1121892325Disney The Lion King 1545282199Divine Divinity 1207658805Divinity 2: Developer’s Cut 1207659105

Continued on next page

1.8. Game ID List 53

Page 58: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDDivinity: Dragon Commander 1207659263Divinity: Dragon Commander Imperial Edition 1207659202Divinity: Dragon Commander Imperial Edition Upgrade 1207659246Divinity: Original Sin - Enhanced Edition 1445516929Divinity: Original Sin - Enhanced Edition Collector’s Edition 1445524575Divinity: Original Sin 2 1584823040Don’t Starve 1207659210Don’t Starve Alone Pack 1459422165Don’t Starve: Reign of Giants 1207664293Don’t Starve: Shipwrecked 1459416807DOOM II + Final DOOM 1440161275Doomdark’s Revenge 1207660693Door Kickers 1207666463Double Dragon Trilogy 1420716694Double Fine Adventure Additional Content 1394340350Double Fine Adventure Definitive Edition 1691391100Downfall: Redux 1455290087Downwell 1440214117Dracula 4+5 1207659250Dracula Trilogy 1207659251Dragon Age™: Origins - Ultimate Edition 1949616134Dragon Lore: Die Legende beginnt 1207660223Dragon Wars 1207666713Dragonsphere 1207658927Dream 1437994027Dream Pinball 3D 1207658899Dreambreak 1460948999Dreambreak Deluxe Edition Upgrade 1687836307Dreamfall Chapters 1207666503Dreamfall Chapters Special Edition 1207665633Dreamfall Chapters Special Edition Upgrade 1207666513Dreamfall: The Longest Journey 1207659045Driftmoon 1207659177Driver®: Parallel Lines 1207658825DROD 1+2+3 1207660443DROD 4: Gunthro and the Epic Blunder 1207665653DROD RPG: Tendry’s Tale 1207664983DROD: The Second Sky 1207665683Dropsy 1441869560Dropsy: Warm Damp Hug 1441901248Drox Operative 1207665903Drox Operative: Invasion of the Ancients 1207665913Dungeon Keeper Gold™ 1207658934Dungeon Keeper™ 2 1207658959Dungeon Rats 1835348437Dungeon Souls 1982030524Dungeons & Dragons: Dark Sun Series 1444390881Dungeons & Dragons: Dragonshard 1207658928Dungeons & Dragons: Krynn Series 1444390670

Continued on next page

54 Chapter 1. Contents

Page 59: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDDungeons & Dragons: Ravenloft Series 1444391327Dungeons 2 1436885138Dungeons 2: A Chance of Dragons 1441355933Dungeons 2: A Game of Winter 1444640476Dungeons 2: A Song of Sand and Fire 1441636287Duskers 1847879387Dust: An Elysian Tail 1207660094Dustforce DX 1207660253Dyad 1207659213Dying Light: Gun Psycho Bundle 1460996021Dying Light: Harran Ranger Bundle 1460996196Dying Light: The Following – Enhanced Edition 1448452156Dying Light: Volatile Hunter Bundle 1460996282Eador. Masters of the Broken World 1207659194Eador. Masters of the Broken World - Allied Forces 1207664753Eador: Genesis 1207659147Earth 2140 Trilogy 1207658738Earth 2150 Trilogy 1207658739Earth 2160 1207658740Earthworm Jim 1+2: The Whole Can ‘O Worms 1207658672Earthworm Jim 3D 1207658649Edna & Harvey: Edna bricht aus 1207664333Edna & Harvey: Harveys neue Augen 1207664343Eisenwald: Blood of November 1589369222Elder Scrolls Adventures: Redguard, The 1440162836Elder Scrolls III: Morrowind GOTY Edition, The 1440163901ELEX 1885888793Elminage Gothic 1427876514else Heart.Break() 1442485613Elven Legacy Collection 1455891732Empire Earth 2 Gold Edition 1207658844Empire Earth 3 1207658859Empire Earth Gold Edition 1207658777Enclave 1207658860Enemy Engaged: Apache vs Havoc 1207658733Enemy Engaged: Comanche vs Hokum 1207658761Enter the Gungeon 1456912569Enter the Gungeon Collector’s Edition Upgrade 1459847591Entomorph: Plague of the Darkfall 1207659993Epistory - Typing Chronicles 1986504189Eradicator 1454313816Erben der Erde: Die große Suche 1207659231Escape Goat 1207659773Escape Goat 2 1207662523Eschalon: Book I 1207659221Eschalon: Book II 1207659220Eschalon: Book III 1207660683Ethan: Meteor Hunter 1207659913Ether One Redux 1207661343

Continued on next page

1.8. Game ID List 55

Page 60: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDEther One Redux Deluxe Edition 1207661353Ether One Redux Deluxe Edition Upgrade 1207661363Etherlords 1207659112Etherlords 2 1207659167Europa Universalis 1423228477Europa Universalis II 1428922775Europa Universalis III Complete 1441875985Europa Universalis III: Collection Upgrade 1443023501Europa Universalis: Rome Gold 1428928921Even the Ocean 2010600563Even the Ocean Friend Pack 1478758387Even the Ocean OST 1926382789Event[0] 1976935743EVERSPACE 1513949567Evil Genius 1207658775Evil Islands 1457950224Evoland 1207659200Evoland 2 Deluxe Edition 1453722952Evoland 2 Deluxe Edition Upgrade 1453723536Evoland 2, A Slight Case of Spacetime Continuum Disorder 1439275574Evolva 1207658648Exanima 1470768488Expeditions: Conquistador 1207659232Expendable 1207658789F-117A Nighthawk Stealth Fighter 2.0 1207664473F.E.A.R. 2: Project Origin + Reborn 1425479123F.E.A.R. Platinum 1423058413F/A-18E Super Hornet 1207658660Faces of War 1428586504Factorio 1238653230Factorio Soundtrack 1348425010Fahrenheit (Indigo Prophecy) 1207658979Falcon Collection 1443160711Fallen Enchantress: Legendary Heroes 1449593992Fallen Enchantress: Ultimate Edition 1448987168Fallen Enchantress: Upgrade to Ultimate 1449598956Fallout 1440166342Fallout 2 1440166436Fallout Tactics 1440163405Fantasy General 1430136345Fantasy Wars 1207658868Far Cry® 1207658750Far Cry® 2: Fortune’s Edition 1207659042Fear Equation 1452681468Feist 1437060567Feist Soundtrack 1437732694FEZ 1207659211Final Liberation: Warhammer® Epic 40,000 1436454557FireStarter 1434372124

Continued on next page

56 Chapter 1. Contents

Page 61: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDFirewatch 1459256379Fist Puncher 1207660303Flame in the Flood, The 1452692111FlatOut 1207658693FlatOut 2 1207660523Flight of the Amazon Queen 1207659723Floyd: Es gibt noch Helden 1207658703For The Glory: A Europa Universalis Game 1442576067FORCED SHOWDOWN 1453126104FORCED SHOWDOWN: Deluxe Content 1995778415FORCED SHOWDOWN: Drone Invasion 1431263338FORCED SHOWDOWN: Supreme Skin Pack 1169415882Forgotten Realms - The Archives - Collection One 1436868249Forgotten Realms: Demon Stone 1207658929Forgotten Realms: The Archives - Collection Three 1436873631Forgotten Realms: The Archives - Collection Two 1436871302Fossil Echo 1230646427FRACT OSC 1207664153Fractured Soul 1207660833Fragile Allegiance 1207659059Fran Bow 1438948561Freedom Force 1445250806Freedom Force vs. the 3rd Reich 1207658870Freedom Planet 1207667013Freespace 2 5Frontschweine 1207665593Frozen Cortex 1327823064Frozen Cortex Mega Tier 1134577161Frozen Cortex Soundtrack 1864614474Frozen Cortex Ultimate Tier 1292508911Frozen Synapse 1438343741Frozen Synapse: Red 1439809043FTL: Advanced Edition 1207659102Full Spectrum Warrior 1207660633Full Spectrum Warrior: Ten Hammers 1207660643Gabriel Knight 2: The Beast Within 1207658837Gabriel Knight 3: Blood of the Sacred, Blood of the Damned 1207658843Gabriel Knight: Sins of the Fathers 1207658828Gabriel Knight: Sins of the Fathers – 20th Anniversary Edition 1207666433Galactic Assault: Prisoner of Power 1426253010Galactic Civilizations I: Ultimate Edition 1207659206Galactic Civilizations II: Ultimate Edition 1444400746Galactic Civilizations III 1444400383Galactic Civilizations III - Altarian Prophecy DLC 1196401295Galactic Civilizations III - Builder’s Kit DLC 1523147364Galactic Civilizations III - Lost Treasures DLC 1279876255Galactic Civilizations III - Map Pack DLC 1446542655Galactic Civilizations III - Mega Events DLC 1446542988Galactic Civilizations III - Mercenaries Expansion Pack DLC 1455707222

Continued on next page

1.8. Game ID List 57

Page 62: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDGalactic Civilizations III - Precursor Worlds DLC 1449648020Galactic Civilizations III - Revenge of the Snathi DLC 1446543176Galactic Civilizations III - Rise of the Terrans DLC 1760930542Galactic Civilizations III Soundtrack 1447842207GALAK-Z 1446111517Game of Thrones: A Telltale Games Series 1432208050Gangland 1207658977Gangsters: Organized Crime 1207659108Gateways 1207659733Gemini Rue 1207659073Geneforge Saga 1207659067Gex 1207666113Ghost Master 1207658687Ghost of a Tale 1875167847Giana Sisters: Rise of the Owlverlord 1207659843Giana Sisters: Twisted Dreams 1207659123Giants: Citizen Kabuto 1207658650Gilde 2, Die 1207660743Gilde 2: Renaissance, Die 1207664873Gilde 2: Seeräuber der Hanse, Die 1207660753Gilde Gold, Die 1207658720Gnomoria 1460101597Gobliiins pack 1207658846Gods Will Be Watching 1207664883Gods Will Be Watching: Special Edition 1207665103Gods Will Be Watching: Special Edition Upgrade 1207665113Goliath 1514020096Goliath - Summertime Gnarkness DLC 1141215211Gomo 1207660403Gone Home 1207665163GoNNER 2056546893GoNNER Soundtrack 2010680720GoNNER: Press Jump To Die Edition 1740495502Gorky 17 1207658744Gothic 1207658682Gothic 2 Gold Edition 1207658718Gothic 3 1207658986Gothic 3: Forsaken Gods Enhanced Edition 1207658993Grand Ages: Medieval 1442498547Grandia II Anniversary Edition 1435140754Gratuitous Space Battles 2 1429007120Gray Matter 1207664743Great Battles Collector’s Edition 1207659216Grim Dawn 1449651388Grim Dawn - Crucible 1812959072Grim Fandango Remastered 1207667183Ground Control 2: Operation Exodus Special Edition 1207658782Ground Control Anthology 1207658776Guacamelee! Gold Edition 1207659513

Continued on next page

58 Chapter 1. Contents

Page 63: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDGuacamelee! Super Turbo Championship Edition 1207665733Guild of Dungeoneering 1432809186Guild of Dungeoneering Deluxe Ice Cream Edition 1811584924Guild of Dungeoneering Soundtrack 1437125214Guild of Dungeoneering: Ice Cream Headaches 1744175238Guild of Dungeoneering: Pirates Cove Adventure Pack 1432813727Guilty Gear Isuka 1207659090Guilty Gear X2 #Reload 1207658922GUN™ 1460036036Gurumin: A Monstrous Adventure 1427103890Hacknet 1439474400Haegemonia Gold Edition 1207658759Halcyon 6: Starbase Commander 1937342852Halfway 1207666533Hammerwatch 1207659483Hand of Fate 1424100574Hand of Fate: Wildcards 1449156918Hard Reset Redux 1459790972Hard West 1442827661Hard West Collector’s Edition 1445349952Hard West Collector’s Pack 1445508195Hard West: Scars of Freedom 1457001454Harvester 1207661373Hatoful Boyfriend 1207665623Hatoful Boyfriend: Holiday Star 1450092067Hatoful Boyfriend: Holiday Star - Collector’s Pack 1450100911Headlander 1566652906Headlander + Soundtrack 1415931005Hearts of Iron 1423477291Hearts of Iron II: Complete 1428932392Hearts of Iron III 1437401338Hearts of Iron III: DLC Collection 1437561494Hector: Badge of Carnage 1441711248Her Story 1435240365Heretic Kingdoms: The Inquisition 1207660283Heritage of Kings: The Settlers™ 1207658793Heroes Chronicles: All chapters 1207658942Heroes of Annihilated Empires 1207659053Heroes of Might and Magic® 1207658748Heroes of Might and Magic® 2: Gold 1207658785Heroes of Might and Magic® 3: Complete 1207658787Heroes of Might and Magic® 4: Complete 1207658915Heroes of Might and Magic® 5: Bundle 1207659022Hind 1207659010Hitman 2: Silent Assassin 1207659002Hitman 3: Contracts 1207660853Hitman: Codename 47 1207658996Hocus Pocus 1207659173Homeworld® Remastered Collection 2114871440

Continued on next page

1.8. Game ID List 59

Page 64: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDHomeworld® Remastered Soundtrack 1522747276Hostile Waters: Antaeus Rising 1207658670Hot Tin Roof: The Cat That Wore A Fedora 1424442317Hotline Miami 1207659118Hotline Miami 2: Wrong Number 1424773427Hotline Miami 2: Wrong Number - Digital Comics 1424856371Hotline Miami 2: Wrong Number Digital Special Edition 1424773562Hotline Miami 2: Wrong Number Digital Special Edition Upgrade 1424773656Hugo Trilogy, The 1207665313Human Fall Flat 1203767418Human Resource Machine 1444812654Humans Must Answer 1207659248HuniePop 1443428641HuniePop - Deluxe Edition Upgrade 1443692774Hybrid Wars 1452686225Hybrid Wars Deluxe Edition 1497274354Hybrid Wars Deluxe Edition Upgrade 1255274701Hybrid Wars Season Pass 1518019165Hyper Light Drifter 1452863689Hyperdimension Neptunia Re;Birth1 1445338941Hyperdimension Neptunia Re;Birth1 - DLC pack 1444639412I Have No Mouth And I Must Scream 1207659593I.G.I. 2: Covert Strike 1207658666Icewind Dale 2 Complete 1207658891Icewind Dale: Enhanced Edition 1207666683IL-2 Sturmovik™: 1946 1207658749Immortal Cities: Kinder des Nils 1207659204Imperial Glory 1207658798Imperialism 1207659139Imperialism 2: The Age of Exploration 1207659153Impossible Creatures 1448280463Incoming + Incoming Forces 1207658790Incredible Adventures of Van Helsing: Final Cut, The 1268757981Incredible Machine Mega Pack, The 1207658799Incredipede 1207659127Independence War 2: Edge of Chaos 1207658873Independence War Deluxe 1207658865Indiana Jones® and the Fate of Atlantis™ 1207666293Indiana Jones® und die Legende der Kaisergruft 1425034773Infested Planet 1207666233Infested Planet: Planetary Campaign 1405825704Infested Planet: Trickster’s Arsenal 1429538479Infinifactory 1436435983Infinium Strike 1252846125Infinium Strike Demo 1646305015InFlux 1207659256Inner World, The 1207659793Inquisitor 1207659095INSIDE 1916896012

Continued on next page

60 Chapter 1. Contents

Page 65: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDInteractive Adventures of Dog Mendonça and Pizzaboy®, The 1456837030Interstate ‘76 Arsenal, The 1207658836Interstate ‘82 1207659076Interstellaria 1436951929Into the Stars 1455787562Invictus: In the Shadow of Olympus 1207658655Invisible Inc. 1430744353Invisible Inc: Contingency Plan 1447064571Iron Storm 1207658763Ironclad Tactics Deluxe Edition 1434445160Ishar Compilation 1207658685Ittle Dew 1207659258J.U.L.I.A. Among the Stars 1457085654Jack Keane 1207659260Jack Keane 2: The Fire Within 1207659241Jack Orlando: A Cinematic Adventure - Director’s Cut 1207658741Jade Empire: Special Edition 1207659237Jagged Alliance 1207658689Jagged Alliance 2 1207658696Jagged Alliance 2: Unfinished Business 1207658653Jagged Alliance 2: Wildfire 1207658743Jagged Alliance: Deadly Games 1207658690Jazzpunk 1207660673Jotun: Valhalla Edition 1458127099Journey of a Roach 1207661723Journeyman Project 1: Pegasus Prime, The 1207664213Journeyman Project 2: Buried in Time, The 1207658872Journeyman Project 3: Legacy of Time, The 1207659009Judge Dredd: Dredd vs Death 1207658779Kathy Rain 1460710709Kathy Rain demo 1497784911Kenshi 1193046833Kentucky Route Zero Season Pass 1207660653Kerbal Space Program 1429864849Kholat 1433331863Killing Time 1259063039Kim 1457696959King Arthur Collection 1423479583King Arthur’s Gold 1420648480King of Dragon Pass 1207659096King’s Bounty: Crossworlds GOTY 1207659154King’s Bounty: Dark Side 1420812121King’s Bounty: Dark Side - Premium Edition 1420813264King’s Bounty: Dark Side - Premium Edition Upgrade 1420813366King’s Bounty: The Legend 1207658867King’s Bounty: Warriors of the North 1207667083King’s Bounty: Warriors of the North - Complete Edition 1207667093King’s Bounty: Warriors of the North - Complete Edition Upgrade 1207667153King’s Quest 1+2+3 1207658878

Continued on next page

1.8. Game ID List 61

Page 66: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDKing’s Quest 4+5+6 1207658839King’s Quest 7+8 1207658881Kingdom Rush 1207665283Kingdom Rush: Frontiers 1195536024Kingdom Soundtrack 1445245918Kingdom: New Lands 1473737130Kingdom: The Far Reaches 1207658675Kingpin: Life of Crime 9Knights and Merchants: The Peasants Rebellion 1207658772Knights of Pen and Paper +1 Deluxier Edition 1529501778Knights of Pen and Paper +1 Deluxier Edition Upgrade 1331315680Knights of Pen and Paper +1 Edition 1320675280Knights of the Sky 1393433855Knock-Knock 1207659923Kona 1454319762Konung 1 + 2 1457346888Kromaia 1207666573Krush Kill ‘N Destroy Xtreme 1207659107Krush Kill ‘N Destroy 2: Krossfire 1207659196Kyn 1433846206Kyn - Deluxe Edition 1433846264La-Mulana 1207659117Labyrinth of Time, The 1207664313Lands of Lore 3 1207659094Lands of Lore™ 1+2 1207658980Last Door: Collector’s Edition, The 1207664553Last Door: Season 2 Collector’s Edition, The 1457355665Last Express, The 1207658906Last Federation Collection, The 1446797453Last Federation, The 1207664253Last Federation, The - Betrayed Hope 1207666953Last Federation, The - The Lost Technologies 1446796759Last Leviathan, The 1272721020Last Tinker™: City of Colors, The 1424254701Layers of Fear 1455107123Layers of Fear: Inheritance 1256894029Legacy of Kain: Blood Omen 2 1207659101Legacy of Kain: Defiance 1207659088Legacy of Kain: Soul Reaver 1207659030Legacy of Kain: Soul Reaver 2 1207659063Legend of Grimrock 1207659016Legend of Grimrock 2 1207666193Legend of Heroes: Trails in the Sky SC, The 1444826419Legend of Heroes: Trails in the Sky, The 1207665083Legend of Kay: Anniversary 1437553673Legend of Kyrandia, The (Book One) 1207659683Legend of Kyrandia: Hand of Fate, The (Book Two) 1207659813Legend of Kyrandia: Malcolm’s Revenge, The (Book Three) 1207659823Legends of Eisenwald 1441229340

Continued on next page

62 Chapter 1. Contents

Page 67: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDLegends of Eisenwald: Knight’s Pack 1444042153Legends of Eisenwald: Road to Iron Forest 1444041616LEGO Batman: Das Videospiel 1423058542LEGO Harry Potter: Die Jahre 1-4 1423058817LEGO Harry Potter: Die Jahre 5-7 1423058931Leisure Suit Larry 1207659158Leisure Suit Larry: Magna Cum Laude (Ungekürzt!) 1207659225Leisure Suit Larry: Reloaded 1207659243Leisure Suit Larry: Yacht nach Liebe! 1207659174Lethis - Path of Progress 1456754427Level22 Gary’s Misadventures 1454602861Lichdom: Battlemage 1426765313Lifeless Planet Premier Edition 1207664723Lilly Looking Through 1207659903LIMBO 1724299977Lionheart: Legacy of the Crusader 8Litil Divil 1207658941Little Big Adventure (Relentless: Twinsen’s Adventure) 1207658971Little Big Adventure 2 (Twinsen’s Odyssey) 1207658974Little Inferno 1444053723Little King’s Story 1460733072Locomotion, Chris Sawyer’s 1207658955Lone Survivor: The Director’s Cut 1207660084Long Dark, The 1447763046Long Live the Queen 1207659933Longest Journey, The 1207658794LOOM™ 1425293328Lords of Magic: Special Edition 1207658778Lords of Midnight, The 1207659333Lords of the Realm 3 1207658784Lords of the Realm: Royal Edition 1207658780Lords of Xulima 1420648167Lords of Xulima - Deluxe Edition 1420648438Lords of Xulima Deluxe Edition Upgrade 1421250907Lost Sea 1856044899Lovely Planet 1207666743Lovers in a Dangerous Spacetime 1441290254Lucius 1207659128Luftrausers 1207661993Lula: The Sexy Empire 1443433575Lumino City 1207667103Lumo 1457427157Lumo - Deluxe Edition 1482572464Lure of the Temptress 1207658694M.A.X. + M.A.X. 2 10Machinarium Collector’s Edition 1207659017Magic Carpet Plus™ 1207658935Magic Carpet™ 2: The Netherworlds 1207659187Magicmaker 1207665973

Continued on next page

1.8. Game ID List 63

Page 68: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDMagrunner: Dark Pulse 1207659236Maize 1519364619Majesty 2 Collection 1423826709Majesty Gold HD 1423481910Man O’ War: Fledgling Griffon 1203084502Man O’ War: Reik’s Fashion 1339137220Man O’ War: Corsair 1448355943Manhole: Masterpiece Edition, The 1207658820Mark of the Ninja 1207665123Mark of the Ninja Special Edition 1207665143Mark of the Ninja Special Edition Upgrade 1207665133Marvellous Miss Take, The 1207666973Masquerada: Songs and Shadows 1561716235Massive Assault 1422288780Massive Assault: Phantom Renaissance 1422452702Massive Chalice 1432894004Massive Chalice Soundtrack 1433148949Master of Magic 1207658855Master of Orion 1441029515Master of Orion 1+2 1207658854Master of Orion 3 1207658858Master of Orion: Collector’s Edition 1456225523Master of Orion: Collector’s Edition Upgrade 1583557467Master of Orion: Revenge of Antares Race Pack 2108222323Masterplan, The 1431943502MDK 6MDK 2 1207658645MechoEcho 2023071927Medal of Honor: Allied Assault War Chest 1207659126Medal of Honor™: Pacific Assault 1176929400Megabyte Punch 1207659583Megamagic: Wizards of the Neon Age 1098700594MegaRace 1+2 1207658758MegaRace 3 1207658764Memoria 1207659803Men of Valor 1454576218Men of War: Assault Squad 1428580803Men of War: Assault Squad GOTY Edition 1428579671Men of War: Assault Squad GOTY Edition Upgrade 1428581105Men of War: Red Tide 1428589210Men of War: Vietnam 1428587439Men of War: Vietnam Special Edition 1428588959Men of War: Vietnam Special Edition Upgrade 1428588163Men of War™ 1426246476Meridian: New World 1207666003Meridian: Squad 22 1583197130Meridian: Squad 22 OST 1349103774Messiah 7Metro 2033 Redux 1436434037

Continued on next page

64 Chapter 1. Contents

Page 69: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDMetro: Last Light Redux 1430740172Metrocide 1207667203Metronomicon, The 2023488780Metronomicon, The - Chiptune Pack 1 1312439301Metronomicon, The - Chiptune Pack 2 1381069348Metronomicon, The - Indie Game Challenge Pack 1 1995567033Metronomicon, The - J-Punch Pack 1094368489Metronomicon, The - The Soundtrack! 1170025678Miasmata 1207659146Might and Magic® 6-pack Limited Edition 1207658788Might and Magic® 7: For Blood and Honor® 1207658916Might and Magic® 8: Day of the Destroyer™ 1207658918Might and Magic® 9 1207658978MIND: Path to Thalamus Enhanced Edition 1207665583Minecraft Story Mode - Adventure Pass 1458753687Minecraft: Story Mode - A Telltale Game Series 1444400283Mini Metro 1434554947Mirror’s Edge™ 1893001152Mitsurugi Kamui Hikae 1207666043Mobile Forces 1207658792Moebius: Empire Rising 1207662703Moment of Silence, The 1448280389Momodora: Reverie Under the Moonlight 1079762750Monkey Island™ 2 Special Edition: LeChuck’s Revenge™ 1425039730Monster Bash 1207665014Montague’s Mount 1207659853Moon Hunters 1452776767Moonbase Commander 1207659114Mortal Kombat 1+2+3 1423059062Mother Russia Bleeds 1230154140Mother Russia Bleeds: Dealer Edition 1183476395Moto Racer 1207658895Moto Racer 2 1207658896Moto Racer 3 Gold Edition 1207658897Mount & Blade 1207666893Mount & Blade: Warband 1207666913Mount & Blade: Warband - Napoleonic Wars 1207666923Mount & Blade: Warband - Viking Conquest Reforged Edition 1207666933Mount & Blade: With Fire & Sword 1207666903MouseCraft 1207664833Mr. Bree+ 1207660293Multiwinia 1207659074Mushroom 11 1443615249Mushroom 11 Soundtrack 1444761329Mutant Mudds 1207659085MX vs. ATV Unleashed 1441801923Myst 5: End of Ages Limited Edition 1207659029Myst Masterpiece Edition 1207658818Nancy Drew: Curse of Blackmoor Manor 1207659205

Continued on next page

1.8. Game ID List 65

Page 70: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDNecropolis: Brutal Edition 1453282796Neighbours From Hell Compilation 1207658765NEO Scavenger 1207667263Never Alone Arctic Collection 1446112277Neverending Nightmares 1207665993Neverwinter Nights 2 Complete 1207659162Neverwinter Nights Diamond 1207658890Nexus: The Jupiter Incident 1207659080Night of the Rabbit, The 1207659218Niko: Through the Dream 1434446017Nine Parchments 1941108493No Man’s Sky 1446213994No Pineapple Left Behind 1455194518No Pineapple Left Behind Soundtrack 1455788247Noctropolis 1444206831Normality 1207658949Nosferatu: Wrath of Malachi 1207666093Not a Hero 1429698467Not A Hero: Global MegaLord Edition 1429699401Not A Hero: Global MegaLord Edition Upgrade 1429699449Nox™ 1207658964Nuclear Throne 1448617555O.R.B.: Off-World Resource Base 1207659155Obduction ® 2003665371Obduction ® Soundtrack 1969367608Obscuritas 1457696008Oceanhorn: Monster of Uncharted Seas 1426499435Octodad: Dadliest Catch 1207660553Odallus: The Dark Call 1435937720Oddworld: Abe’s Exoddus 1207658709Oddworld: Abe’s Oddysee 1207658705Oddworld: Munch’s Oddysee 1254027184Oddworld: New ‘n’ Tasty - Alf’s Escape 1424782268Oddworld: New ‘n’ Tasty - Scrub Abe 1424782379Oddworld: New ’n’ Tasty 1424782569Oddworld: Strangers Vergeltung 1207658950Offworld Trading Company 1574464714Offworld Trading Company - Almanac DLC 1915989504Offworld Trading Company - Ceres Initiative DLC 1094440425Offworld Trading Company - Map Toolkit DLC 1803353327Offworld Trading Company - OST 1076210813Offworld Trading Company - Real Mars Map Pack DLC 1602488610Offworld Trading Company - The Patron and the Patriot DLC 1730572477Okhlos 1318673719Okhlos Olympus Edition 2030042380Okhlos Olympus Edition Upgrade 1980931230OlliOlli 1207665033OlliOlli2: Welcome to Olliwood 1438603531Omerta: City of Gangsters (4 DLCs included) 1207659157

Continued on next page

66 Chapter 1. Contents

Page 71: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDOmerta: City of Gangsters Gold Edition 1207664223Omerta: The Japanese Incentive 1207660383Omikron: The Nomad Soul 1207659190OmniBus: Game of the Year Edition 1119659879On Rusty Trails 1476356259Oniken: Unstoppable Edition 1291537992Order of the Thorne: The King’s Challenge 1444830704Ori and the Blind Forest: Definitive Edition 1384944984Outcast 1.1 1207658853Outlast 1207660064Outlast 2 1453301453Outlast: Whistleblower 1207664463Outlaws + A Handful of Missions 1425302464Overclocked: Eine Geschichte über Gewalt 1438770870Overfall 1449227594Overfall Soundtrack 1163019077Overlord + Raising Hell 1207659207Owlboy 1159880091Owlboy Collector’s Edition 1588437651Owlboy Soundtrack 1470685745Oxenfree 1457519353Painkiller Black Edition 1207658715Painkiller: Overdose 1879874988Pajama Sam Vol. 1 1434542135Pajama Sam Vol. 2 1435136567Pan-Pan 1718630725Pan-Pan Upgrade to Planetary Pack 1082048078Pandemonium 2 1207659238Pandemonium! 1207659054Panzer Elite Special Edition 1207658716Panzer General 2 1207658871Panzer General 3D Assault 1207658866Paper Sorcerer 1207664363Papers, Please 1207659209Paranautical Activity Deluxe Atonement Edition 1422618200Parkan: Iron Strategy 1333602811Parkan: The Imperial Chronicles 1198456673Parkitect 1951847103Pathologic Classic HD 1445852217Patrizier 1+2 1207658802Patrizier 3 1207658706Paws: A Shelter 2 Game 1455701771Paws: Pitter Patter Edition 1455702592Paws: Upgrade to Pitter Patter Edition 1457955115Pax Imperia - Eminent Domain 1434378430Pazifik Admiral 1430136184Penumbra Collection, The 1207659255Perimeter 1207658667Perimeter: Emperor’s Testament 1454498998

Continued on next page

1.8. Game ID List 67

Page 72: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDPersonal Nightmare 1207658773Phantasmagoria 1207658834Phantasmagoria 2: A Puzzle of Flesh 1207658841Pharaoh + Cleopatra 1207659046Pharaonic 1331575837Pid 1207659131Pier Solar and the Great Architects 1207666563Pillars of Eternity: Champion Edition 1207666853Pillars of Eternity: Hero Edition 1427292148Pillars of Eternity: Royal Edition 1420803723Pillars of Eternity: The White March - Expansion Pass 1439805257Pillars of Eternity: The White March - Part I 1439805122Pillars of Eternity: The White March - Part II 1439894629Pilot Brothers 1426251021Pilot Brothers 2 1426251362Pilot Brothers 3: Back Side of the Earth 1426251500Pinball Gold Pack 1207658910Pinball World 1207664403Pirates! Gold Plus 1207659060Pixel Piracy 1207667073PixelJunk Monsters HD 1207659883PixelJunk Shooter 1207660104Planescape: Torment 1207658887Planet Nomads 1403945378Planetbase 1351624781POD Gold 1207658970Police Quest Collection 1207658902Police Quest: SWAT 1+2 1207658909Political Animals 1688206338Populous™ 1207658963Populous™ 2: Trials of the Olympian Gods 1207658981Populous™: The Beginning 1207659027Port Royale 1207658791Port Royale 2 1207658698Post Mortem 1207659113POSTAL 2 1207658755POSTAL: Classic and Uncut 1207658754Powerslide 1207659116Praetorians 1207658795Prehistorik 1+2 1430913339Primordia 1207659144Prince of Persia 1207659109Prince of Persia: The Two Thrones 1207659091Prince of Persia: Warrior Within 1207659082Prince of Persia®: The Sands of Time 1207658747Prison Architect 1441974651Prison Architect Aficionado DLC 1442909513Prison Architect Name in Game DLC 1442910108Privateer 2: The Darkening 1207659613

Continued on next page

68 Chapter 1. Contents

Page 73: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDPro Pinball Big Race USA 1207658735Pro Pinball Fantastic Journey 1207658736Pro Pinball Timeshock 1207658737Project Eden 1207659235Project Highrise 2018730457Project Zomboid 1453298883Psychonauts 1207658807Puddle 1207659122Punch Club 1452777713Punch Club Deluxe Edition 1453385169Punch Club Deluxe Edition Upgrade 1453462163Pure Pinball 2 REDUX 1207658710Puzzle Agent 1441715179Puzzle Agent 2 1441715815P·O·L·L·E·N 1460628458Q.U.B.E.: Director’s Cut 1207665513Quake II: Quad Damage 1443696817Quake III: Gold 1443696086Quake: The Offering 1440166133Quest for Glory 1-5 1207659040Quest for Infamy 1207664993Race Driver: GRID 1207659233Race the Sun 1207660134Rad Rodgers: World One 1123684973Rage of Mages 1459856053Rage of Mages II: Necromancer 1459856152Raiden III Digital Edition 1207666023Raiden IV: OverKill 1445524380Raiden Legacy 1207659226Railroad Tycoon 2 Platinum 1445250876Railroad Tycoon 3 1445251062Randal’s Monday 1207666663Raptor: Call of the Shadows 2010 Edition 1207658879Raumschiff Titanic 1441102382Raven, The: Legacy of a Master Thief 1207659783Rayman 2: The Great Escape 1207658940Rayman 3: Hoodlum Havoc 1207658947Rayman Origins 1207659234Rayman Raving Rabbids™ 1453737805Rayman® Forever 1207658919Read Only Memories 1444027604Read Only Memories - Deluxe Edition Upgrade 1444027762Real Myst 1207658824Real Myst Masterpiece Edition 1207664443Realms of Chaos 1207659182Realms of the Haunting 1207658921Rebel Galaxy 1435582019Rebuild 3: Gangs of Deadsville 1432285342Recettear: An Item Shop’s Tale 1441875624

Continued on next page

1.8. Game ID List 69

Page 74: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDRed Baron Pack 1207658801Red Faction 1207660623Red Faction 2 1207660613Redline 1207664193Redneck Rampage Collection 1207658674Redshirt 1207660173Reigns 1677885333Reigns Collector’s Edition Upgrade 2100741363Renowned Explorers Bundle 1664096574Renowned Explorers: International Society 1435329098Renowned Explorers: More To Explore 1460114368Reprisal Universe 1207665813Republique 1423080728Republique Deluxe Edition 1423214546Republique Deluxe Edition Upgrade 1423214759Requiem: Avenging Angel 1449581489Resonance 1207659043Restaurant Empire 1207658823Retro City Rampage DX 1207659049Return to Castle Wolfenstein 1443699418Return to Krondor 1207658840Return to Zork 1207658907Reus 1207659223Revenant 1207665803REVOLVER360 RE:ACTOR 1427964976Rex Nebular and the Cosmic Gender Bender 1207662113Richard & Alice 1207659175Ring Runner: Flight of the Sages 1207659249Rise of the Triad (2013) 1207659244Rise of the Triad: Dark War 1207658732Risen 1207663153Risen 2: Dark Waters 1207663193Risen 2: Dark Waters Gold Edition 1207663173Risen 2: Dark Waters Gold Edition Upgrade 1207664183Risen 3: Titan Lords 1454068042Risen 3: Titan Lords - Complete Edition 1455791083Risen 3: Titan Lords - Upgrade to Complete 1455534282Risk of Rain 1207660563Riven: The Sequel to Myst 1207658819Robin Hood: Die Legende von Sherwood 1207659008Robinson’s Requiem Collection 1207658686Rocket Ranger (Emulated Amiga Edition) 1207666773Rogue Legacy 1207659242Rogue Trooper 1207659893Rogue Wizards 2069019551RollerCoaster Tycoon 2: Triple Thrill Pack 1207658957Rollercoaster Tycoon 3: Platinum! 1207659032RollerCoaster Tycoon: Deluxe 1207658945Ronin 1435570424

Continued on next page

70 Chapter 1. Contents

Page 75: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDRonin: Digital Special Edition 1435570512Ronin: Digital Special Edition Upgrade 1435570651Runaway 2: The Dream of the Turtle 1207659057Runaway 3: A Twist of Fate 1207659083Runaway: A Road Adventure 1207658727Rune Classic 1207660013Runestone Keeper 1445608249S.T.A.L.K.E.R.: Call of Pripyat 1207660583S.T.A.L.K.E.R.: Clear Sky 1207660603S.T.A.L.K.E.R.: Shadow of Chernobyl 1207660573S2: Silent Storm Gold Edition 1207659058Sacred 2 Gold 1207665233Sacred Gold 1207658688Sacrifice 1207658651Saints Row 2 1430740458Saints Row: The Third - The Full Package 1430740694Sam & Max Beyond Time and Space 1207659064Sam & Max Hit the Road 1207666303Sam & Max Save the World 1207659065Sam & Max: The Devil’s Playhouse 1207659098Samaritan Paradox, The 1207664263Samorost 2 1435321049Samorost 3 1452686647Samorost 3 Cosmic Edition 1453277526Samorost 3 Soundtrack + Art Book 1453277092Sanctuary RPG: Black Edition 1423487549Sang-Froid: Tales of Werewolves 1207660203Sanitarium 1207658811Satellite Reign 1428054996Satellite Reign - Artbook 1440698356Satellite Reign - Reboot Prequel Novella 1440698146Satellite Reign - Soundtrack 1440698774Schein 1207665003Schleichfahrt 1436955893Screamer 1207658726Screamer 2 1207659141Screamer 4x4 1207664523Screencheat 1207666493Sea Dogs 1426251705Sea Dogs: Caribbean Tales 1444806723Secret Agent 1207659188Secret of Monkey Island™: Special Edition, The 1207666253Sengoku 1445506889Sensible Soccer 2006 1207658668Sensible World of Soccer 96/97 1207659176Septerra Core: Legacy of the Creator 1207658742Serious Sam: The First Encounter 1207658876Serious Sam: The Second Encounter 1207658877Serpent in the Staglands 1431941262

Continued on next page

1.8. Game ID List 71

Page 76: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDSeven Cities of Gold: Commemorative Edition 1207664773Seven Kingdoms 2 HD 1207658723Seven Kingdoms: Ancient Adversaries 1207658724Shadow Man 1207659713Shadow Tactics: Blades of the Shogun 1601442230Shadow Tactics: Blades of the Shogun Demo 1146045354Shadow Warrior (2013) 1207659573Shadow Warrior 2 1434021265Shadow Warrior 2 Deluxe 1728393087Shadow Warrior 2 Deluxe Upgrade 1735987864Shadow Warrior Classic Complete 1207659142Shadow Warrior Classic Redux 1618073558Shadow Watch 1438597383Shadowgate 1207665823Shadowgate: Special Edition 1207665843Shadowgate: Special Edition Upgrade 1207665833Shadowgrounds 1207658914Shadowgrounds Survivor 1207659453Shadowrun Hong Kong - Extended Edition 1436866438Shadowrun Hong Kong - Extended Edition Deluxe 1440061546Shadowrun Hong Kong - Extended Edition Deluxe Upgrade 1439900139Shadowrun Returns 1207660413Shadowrun: Dragonfall - Director’s Cut 1207660913Shadows: Heretic Kingdoms 1207666963Shadows: Heretic Kingdoms Soundtrack 1440697210Shadwen 1457610504Shantae and the Pirate’s Curse 1456141287Shantae: Risky’s Revenge - Director’s Cut 1442832029Shardlight 1454499527Shardlight: Special Edition 1456490013Shardlight: Special Edition Upgrade 1456490149Shattered Haven 1207659160Shattered Steel 1207658669Shelter 1207659503Shelter 2 1424868751Shelter 2 Special Edition 1207664733Shelter 2 Special Edition Upgrade 1424868860Shelter 2: Mountains 1440151507Sheltered 1454930864Sherlock Holmes versus Jack the Ripper 1460731635Sherlock Holmes: Nemesis - Remastered 1460731832Sherlock Holmes: Secret of the Silver Earring 1207658862Sherlock Holmes: The Awakened - Remastered 1460731213Shivah, The 1207660263Shogo: Mobile Armor Division 1207658659Shovel Knight 1207664823Sid Meier’s Alpha Centauri™ Planetary Pack 1207658936Sid Meier’s Civilization IV®: The Complete Edition 1760534591Sid Meier’s Civilization® III Complete 1471405734

Continued on next page

72 Chapter 1. Contents

Page 77: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDSid Meier’s Colonization: Erschaffen Sie eine neue Nation 1207659051Sid Meier’s Covert Action 1207660463Sid Meier’s Pirates! 1445250653Sid Meier’s Railroads! 1445250539Signal Ops 1207659198Silence 1452682147Silence Artbook 1745548673Silence Demo 1298069403Silence Soundtrack 2038860941Silent Hunter® 2 1207658770Silent Service 1+2 1207660513Silver 1207659041SimCity™ 2000 Special Edition 1207658969SimCity™ 3000 Unlimited 2086050016SimCity™ 4 Deluxe Edition 1207664593Simon the Sorcerer 1207658699Simon the Sorcerer 3D 1207658701Simon the Sorcerer II: Der Löwe, der Zauberer & der Schrank 1207658700SimplePlanes 1338132110SiN Gold 1207660343Singularity™ 1207659239Sins of a Solar Empire: Rebellion – Outlaw Sectors DLC 1559764443Sins of a Solar Empire®: Rebellion Ultimate Edition 1449139823Sir, You Are Being Hunted 1207664303Skulls of the Shogun: Bone-A-Fide Edition 1425657908SKYHILL 1458729425Skyshine’s BEDLAM Deluxe Edition 1705536970Skyshine’s BEDLAM Redux! 1876268007Skyshine’s BEDLAM Soundtrack 1323526711Slain: Back From Hell 1458053826Slain: Back From Hell Deluxe Edition Upgrade 1261817207Slave Zero 1207662553Slender: The Arrival 1207659203Slime Rancher 1459259227Slipstream 5000 1207658953Smuggler’s Guild 1207665024Smugglers V 1207659873Smugglers V: Invasion 1207666453Smugglers V: Invasion - Warrior Within 1425386632Snapshot 1207659143Sniper Elite: Berlin 1945 1207658852Sokobond 1422630762Soldiers: Heroes of World War II 1207658664Solus Project, The 1455617752SOMA 1439487606Sorcerer King 1445609115Sorcerer King – Rivals 1439647354Soulbringer 1207659003Space Colony HD 1207659135

Continued on next page

1.8. Game ID List 73

Page 78: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDSpace Empires IV Deluxe 1207659215Space Pirates and Zombies 1207664843Space Quest 1+2+3 1207658875Space Quest 4+5+6 1207658833Space Rangers HD: A War Apart 1207667113Space Rangers: Quest 2085898015Space Rogue 1383775419Space Rogue Classic 1958880681Space Rogue Soundtrack 2036544275Space Run: Fast and Safe Delivery 1207665173Spacechem 1207659018Spacecom 1207665863Speed Busters: American Highways 1207658976Speedball 2 HD 1207660393Spellforce 2: Demons Of The Past 1207660473Spellforce 2: Dragon Storm 1207658943Spellforce 2: Shadow Wars 1207658939Spellforce 3 1419313792Spellforce Platinum 1207658719Spelunky 1207659257SPORE™ Collection 1948823323Spycraft: The Great Game 1207659115Stacking 1207659145Star Control 1+2 1207658925Star Control 3 1207658967Star Ruler 2 1427876902Star Ruler 2: Wake of the Heralds 1773820830Star Trek™: 25th Anniversary 1427108887Star Trek™: Judgment Rites 1429089605Star Trek™: Starfleet Academy 1429170550Star Trek™: Starfleet Command Gold Edition 1429172763Star Vikings 1476323769Star Vikings Demo 1866866270Star Vikings Soundtrack 1788373596STAR WARS™ Battlefront™ II 1421404701STAR WARS™ Empire at War: Gold Pack 1421404887STAR WARS™ Galactic Battlegrounds Saga 1421404646STAR WARS™ Jedi Knight: Dark Forces II 1421405068STAR WARS™ Knights of the Old Republic™ II: The Sith Lords™ 1421404581STAR WARS™ Rebellion 1421404828STAR WARS™ Republic Commando 1421405135STAR WARS™ Shadows of the Empire™ 1449669419STAR WARS™ Starfighter™ 1421404999STAR WARS™: Dark Forces 1421404433Star Wars™: Jedi Knight™ - Jedi Academy™ 1428935726Star Wars™: Jedi Knight™ II - Jedi Outcast™ 1428935917STAR WARS™: Knights of the Old Republic 1207666283Star Wars™: Rebel Assault 1 + 2 1429011813STAR WARS™: Rogue Squadron 3D 1421404950

Continued on next page

74 Chapter 1. Contents

Page 79: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDSTAR WARS™: TIE Fighter Special Edition 1207666273STAR WARS™: X-Wing Alliance™ 1421404763STAR WARS™: X-Wing Special Edition 1207666263STAR WARS™: X-Wing vs. TIE Fighter 1421404508Star Wolves 1207658864Star Wolves 2 1452257327Star Wolves 3: Civil War 1426253436Starbound 1452598881StarCrawlers 1432039876Stardew Valley 1453375253Starflight™ 1+2 1207658983Stargunner 1207659693Starpoint Gemini 2 1207666123Starpoint Gemini 2: Secrets of Aethera 1426507697Starpoint Gemini 2: Titans 1447684637Startopia 1207659100STASIS 1439548178STASIS: Deluxe Edition 1440603706STASIS: Deluxe Edition Upgrade 1440603896Stealth Bastard Deluxe Complete Edition 1430239690Stealth Inc. 2: A Game of Clones 1430297341Stealth Inc. 2: A Game of Clones Deluxe 1430386162SteamWorld Dig 1207660733Stick it to the Man! 1207660713Still Life 1207658882Still Life 2 1207659007Stonekeep 1207658671Stories: The Path of Destinies 1457539226Stories: The Path of Destinies - Artbook 1249018865Stories: The Path of Destinies - Original Soundtrack 2005528327Strategic Command: European Theater 1207658822Street Fighter Alpha 2 1207659134Strike Commander 1207659195Strike Suit Zero: Director’s Cut 1207664533Strong Bad’s Cool Game for Attractive People 1441707255Stronghold Crusader 2 1433852499Stronghold Crusader 2: Delivering Justice mini-campaign 1450362950Stronghold Crusader 2: Freedom Fighters mini-campaign 1450362827Stronghold Crusader 2: Special Edition 1443001674Stronghold Crusader 2: The Emperor & The Hermit 1443000530Stronghold Crusader 2: The Jackal & The Khan 1443001420Stronghold Crusader 2: The Princess & The Pig 1443000342Stronghold Crusader 2: The Templar & The Duke 1443001244Stronghold Crusader HD 1207658713Stronghold HD 1207658712Subject 13 1432565635Sublevel Zero 1443519435Subterrain 1458056008Subwar 2050 Complete 1207659217

Continued on next page

1.8. Game ID List 75

Page 80: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDSudeki 1207664353Summoner 1207660823Sunless Sea 1421064427Sunless Sea: Zubmariner 1592527019Sunrise 1439452105Super Hexagon 1207660213Super Puzzle Platformer Deluxe 1207660793Super Time Force Ultra 1207665553SUPERHOT 1456141688SuperPower 2 1434634843Supreme League of Patriots: Season Pass 1422281930Supreme Ruler 2010 1207665673Supreme Ruler 2020 Gold Edition 1207666623Surgeon Simulator 2013 1207659833Surgeon Simulator Anniversary Edition 1207665573Swapper, The 1207660003SWAT 3: Tactical Game of the Year Edition 1207658946Sword of the Samurai 1207661733Sword of the Stars: Complete Collection 1450279740Sword of the Stars: The Pit Gold Edition 1207660183Sword of the Stars: The Pit Gold Edition - Healer 2080526928Sword of the Stars: The Pit Gold Edition - Juggernaut 1207666103Sword of the Stars: The Pit Gold Edition - Necromancer 1422619461Sword of the Stars: The Pit Gold Edition - The Pilgrim 1207664373Syberia 1207658848Syberia 2 1207658849Symphony 1207659079Syndicate Plus™ 1207658992Syndicate Wars™ 1207659193System Shock 1439637285System Shock Demo 2116300560System Shock: Enhanced Edition 1442477571System Shock™ 2 1207659172Tahira Soundtrack 1621931815Tahira: Echoes of the Astral Empire 1852379375Tales From Space: Mutant Blobs Attack 1207659523Tales from the Borderlands 1432213337Tales of Maj’Eyal 1207666523Tales of Maj’Eyal: Ashes of Urh’Rok 1207666753Tales of Maj’Eyal: Embers of Rage 1455036958Tales of Monkey Island 1207659066Technobabylon 1430234218Technobabylon: Deluxe Edition 1430135783Technobabylon: Deluxe Edition Upgrade 1430234440Teenagent 1207658753Telepath Tactics 1428918226Tempest 2122277533Tempest Soundtrack 1124055625Temple of Elemental Evil, The 1207658889

Continued on next page

76 Chapter 1. Contents

Page 81: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDTerminal Velocity 1207659136Terra Nova: Strike Force Centauri 1434984562Terraria 1207665503TerraTech 1448625945TerraTech: Deluxe Edition 1452768399TerraTech: R&D Pack 1452769829Tesla Effect: A Tex Murphy Adventure 1207664503Teslagrad 1207660433Testament of Sherlock Holmes, The 1460731430Tetrobot and Co. 1207665183Tex Murphy: Mean Streets + Martian Memorandum 1207658766Tex Murphy: Overseer 1207658769Tex Murphy: The Pandora Directive 1207658768Tex Murphy: Under a Killing Moon 1207658767Tharsis 1453374895The 11th Hour 1207659000The Art of Tahira 1824632967The Dig® 1425299904The Dwarves Digital Deluxe Edition Upgrade 2108745953The Escapists 1423221839The Escapists: Alcatraz 1443778814The Escapists: Duct Tapes Are Forever 1446465369The Escapists: Escape Team 1443779037The Escapists: Fhurst Peak Correctional Facility 1443778954The Escapists: The Walking Dead 1441717336The Escapists: The Walking Dead - Deluxe Edition Upgrade 1442564308The Fall 1425568340The Final Station 1580842560The Final Station Collector’s Edition 1675233552The Final Station Collector’s Edition Upgrade 1372401911The Guild 3 1584560456The Little Acre 1950015716The Long Journey Home (Coming Soon) 1658599722The Original Strife: Veteran Edition 1432899949The Park 1409316604The Real Texas 1207659140The Real Texas: Cellpop Goes Out At Night 1839729056The Real Texas: Dusty Skies Edition 2140144873The Saboteur™ 1403000599The Silver Case 1133130154The Silver Case Deluxe Edition 1415654281The Silver Case Demo 1159805368The Swindle 1436971395The Void 1207666183The Walking Dead: 400 Days 1432207890The Walking Dead: A New Frontier 1401438095The Walking Dead: Michonne - A Telltale Miniseries 1455785261The Walking Dead: Season 1 1432207977The Walking Dead: Season 2 1432208124

Continued on next page

1.8. Game ID List 77

Page 82: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDThe Way 1207667163The Witness 1461060839Thea: The Awakening 1452699415Theme Hospital 1207659026Theme Park 1207660423Thief™ 2: The Metal Age 1207659001Thief™ 3: Deadly Shadows 1207659036Thief™ Gold 1207658997This Is the Police 1513553405This War of Mine: Soundtrack Edition 1207666873This War of Mine: The Little Ones 1109065057Through the Woods 1811173671Through the Woods: Collector’s Edition 1332540609Through the Woods: Collector’s Edition Upgrade 1849261256Thunderscape 1207659463Time Commando 1207658987Time Gentlemen, Please! + Ben There, Dan That! 1207659743Timelapse 1438596389TimeShift™ 1460032883Tiny and Big: Grandpa’s Leftovers 1207659048TIS-100 1436869408Titan Quest Anniversary Edition 1196955511Titan Souls 1427985242Titan Souls: Digital Special Edition 1427987656Titan Souls: Digital Special Edition Upgrade 1429024794Titus The Fox: To Marrakech and Back 1828289583To The Moon 1207659072Tom Clancy’s Ghost Recon® 1207658751Tom Clancy’s Rainbow Six® 1207658752Tom Clancy’s Splinter Cell® 1207659034Tomb Raider 1+2+3 1207659052Tomb Raider: The Angel of Darkness 1207659089Tomb Raider: The Last Revelation + Chronicles 1207659077Toonstruck 1207666633Torchlight 1207659069Torchlight II 1958228073Toren 1429865580Toren Deluxe Edition 1430300061Torin’s Passage 1207659044Total Annihilation: Commander Pack 1207658880Total Annihilation: Kingdoms + Iron Plague 1207658912Total Overdose: A Gunslinger’s Tale in Mexico 1207659179Tower of Guns 1207660863Towerfall: Ascension 1430924174Towerfall: Ascension - Dark World 1431078929Train Fever 1424258777Transistor 1429612159Transistor Soundtrack 1429612255Transport Fever 1720767912

Continued on next page

78 Chapter 1. Contents

Page 83: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDTreasure Adventure Game 1207659013TRI: Of Friendship and Madness 1207666243TrickStyle 1435224812Trine 2: Complete Story 1207660353Trine 2: Soundtracks & Artbooks 1436531655Trine 3: The Artifacts of Power 1431599567Trine Enchanted Edition 1207659020Triple Town 1207660023Tropico 3 Gold Edition 1207659056Tropico 4 1435068351Tropico 4 - Complete DLC Pack 1435068458Tropico 5 1436885062Tropico 5: Complete Collection 1444303465Tropico 5: Complete Collection Upgrade 1444303206Tropico Reloaded 1207658817Turmoil 1812631235Turok 1444038183Two Worlds 2: Epic Edition 1207659214Two Worlds Epic Edition 1207658861Tyranny - Archon Edition 1183547197Tyranny - Commander Edition 1270048047Tyranny - Overlord Edition 1447126331Tyrian 2000 1207658901Tzar: Die Schlacht um die Krone 1207659252UFO: Afterlight 1207658869UFO: Aftermath 1207658815UFO: Aftershock 1207658816Ufo: Enemy unknown 1445250340Ultimate Body Blows 1207659180Ultimate DOOM, The 1440164514Ultimate General: Gettysburg 1420648479Ultima™ Worlds of Adventure 2: Martian Dreams 1207659062Ultima™ 1+2+3 1207658961Ultima™ 4+5+6 1207658965Ultima™ 4: Quest of the Avatar 1207658962Ultima™ 7 The Complete Edition 1207658984Ultima™ 8 Gold Edition 1207659015Ultima™ 9: Ascension 1207659093Ultima™ Underworld 1+2 1207658937UnderRail 1447688349Undertale 1456487183Unepic 1207659227Unholy Heights 1207661823Unmechanical: Extended 1207659087Unreal 2: The Awakening Special Edition 1207658677Unreal Gold 1207658679Unreal Tournament 2004 Editor’s Choice Edition 1207658691Unreal Tournament GOTY 1207658692Unrest 1207665053

Continued on next page

1.8. Game ID List 79

Page 84: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDUnrest Special Edition 1207665063Unrest Special Edition Upgrade 1207665073Uplink: Hacker Elite 1207659033Uprising 2: Lead and Destroy 1453458005Uprising: Join or Die 1453195863Urban Chaos 1207659106Urban Empire 1466230825Uru: Complete Chronicles 1207658827VA-11 Hall-A: Cyberpunk Bartender Action 2074961301Valdis Story: Abyssal City 1207660143Valhalla Hills 1445528240Valhalla Hills: Two-Horned Helmet Edition 1447605666Valhalla Hills: Two-Horned Helmet Edition Upgrade 1455120451Vampire: The Masquerade - Redemption 1207658831Vampire®: The Masquerade - Bloodlines™ 1207659240Vangers 1207665873Vanishing of Ethan Carter, The 1207665373Vanishing of Ethan Carter, The - Collector’s Edition upgrade 1207665543Venom. Codename: Outbreak 1434357748Vertical Drop Heroes HD 1207664413Victor Vran 1433856545Victoria Complete 1423218604Vikings - Wolves of Midgard 1680239891Volgarr the Viking 1207659623VR Soccer ‘96 1207658783VVVVVV 1207659753Wacky Wheels 1207665483Waking Mars 1207659181War Wind 1455545518War Wind II: Human Onslaught 1441098222Wargame: European Escalation 1207659247Warhammer® 40,000: Chaos Gate 1433928487Warhammer® 40,000: Rites of War 1443606025Warhammer®: Shadow of the Horned Rat 1433929853Warlords Battlecry 1207659110Warlords Battlecry 2 1207659137Warlords Battlecry 3 1207658725Warrior Kings 1438006945Warrior Kings: Battles 1438007195Warsow 1207659121Wasteland 1: The Original Classic 1207660163Wasteland 2 Director’s Cut Digital Classic Edition 1207665713Wasteland 2 Director’s Cut Digital Deluxe Edition 1207665153Wasteland 2 Director’s Cut Digital Deluxe Edition Upgrade 1207665723Waxworks 1207658702Way of the Red 1949808563Way of the Samurai 4 1443083988Way of the Samurai 4: DLC Pack 1443084191We are the Dwarves 1115004086

Continued on next page

80 Chapter 1. Contents

Page 85: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDWe Happy Few 1296814897Westport Independent, The 1453197519Where Is My Heart? 1207664633Whispered World: Special Edition, The 1207659019Windforge 1207661903Windward 1434370838Wing Commander ®: Privateer ™ 1207658938Wing Commander™ 1+2 1207658960Wing Commander™ 3 Heart of the Tiger™ 1207658966Wing Commander™ 4: The Price of Freedom 1207659021Wing Commander™ 5: Prophecy Gold Edition 1207660153Wing Commander™: Academy 1207659473Wing Commander™: Armada 1207659603Wings (Emulated Amiga Edition) 1207666473Wings of Prey: Special Edition 1426252678Wings!™ Remastered Edition 1207666423Witcher 2: Assassins Of Kings, The - Enhanced Edition 1207658930Witcher 3: Wild Hunt 1207664663Witcher 3: Wild Hunt – gratis DLC-Programm 1427206931Witcher 3: Wild Hunt, The - Blood and Wine 1441620909Witcher 3: Wild Hunt, The - Expansion Pass 1427195509Witcher 3: Wild Hunt, The - Game of the Year Edition 1640424747Witcher 3: Wild Hunt, The - Hearts of Stone 1441355562Witcher Adventure Game, The 1207666883Witcher: Enhanced Edition, The 1207658924Wizardry 6+7 1207659229Wizardry 8 1207659230Wolcen: Lords of Mayhem 1458655673Wolf Among Us, The 1432213513Wolfenstein 3D + Spear of Destiny 1441705226World in Conflict: Complete Edition 1438332414World of Goo 1421855536World Rally Fever: Born on the Road 1207658990Worlds of Ultima™ : The Savage Empire 1207659061Worms 2 1207659104Worms Forts: Under Siege 1207659170Worms United 1207658991Worms W.M.D 1387286368Worms World Party Remastered 1433238834Worms: Armageddon 1462173886Wuppo 1173909540X Rebirth 1455645883X Rebirth: Home of Light Complete Edition 1455647768X Rebirth: Home of Light Complete Edition Upgrade 1456399450X-Com: Apocalypse 1445249430X-Com: Enforcer 1445249599X-Com: Interceptor 1445249671X-COM: Terror from the Deep 1445249983X2: Die Bedrohung 1441032629

Continued on next page

1.8. Game ID List 81

Page 86: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

Table 1 – continued from previous pageGame Name IDX3: Reunion 1441038404X3: Terran War Pack 1441039322X: Gold 1446131634Xanadu Next 1284895531Xenonauts 1207664803Yooka-Laylee 1627353338Yooka-Laylee - Digital Deluxe Edition Upgrade 1354053863Ys I & II Chronicles+ 1422357672Ys Origin 1422357892Ys VI: The Ark of Napishtim 1429178878Ys: The Oath in Felghana 1422357788Z: The Game 1207664893Zafehouse: Diaries 1207659171Zak McKracken and the Alien Mindbenders 1425040088Zenith 1706509320Zeus + Poseidon (Acropolis) 1207659039Ziggurat 1437564865Zombasite 1218352612Zombasite Demo 1951862657Zombie Night Terror 2071628374Zombie Night Terror Special Edition Upgrade 1239682736Zombie Shooter 1207660363Zombie Shooter 2 1207660503Zork Anthology, The 1207658903Zork Nemesis: The Forbidden Lands 1207658913Zork: Grand Inquisitor 1207658948Zurück in die Zukunft: Das Spiel 1207659097

82 Chapter 1. Contents

Page 87: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

CHAPTER 2

Links

• Source on Github

• My Python implementation

• GOG Downloader Documentation by Sude

83

Page 88: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

84 Chapter 2. Links

Page 89: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

CHAPTER 3

Contributors

• Yepoleb

• Barefoot_Monkey

85

Page 90: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

86 Chapter 3. Contributors

Page 91: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

HTTP Routing Table

/(str:project)GET /(str:project)/4/master/(str:os).json,

35

/accountGET /account/gameDetails/(int:game_id).json,

8GET /account/getFilteredProducts, 23GET /account/movieDetails/(int:movie_id).json,

10GET /account/save_birthday/(str:date),

15GET /account/save_chat_privacy/(int:privacy),

17GET /account/save_country/(str:country),

16GET /account/save_newsletter_subscription/(bool:subscribed),

16GET /account/save_promo_subscription/(bool:subscribed),

16GET /account/save_search_privacy/(bool:privacy),

17GET /account/save_sharing_wishlist/(int:privacy),

17GET /account/save_wishlist_notification/(bool:subscribed),

16GET /account/settings/orders/data, 26GET /account/wishlist/search, 25POST /account/avatar, 18POST /account/hideProduct/(int:product_id),

12POST /account/logout_all_sessions, 17POST /account/revealProduct/(int:product_id),

12POST /account/save_shelf_background/(str:background_name),

18POST /account/tags/add, 14POST /account/tags/attach, 13POST /account/tags/delete, 14

POST /account/tags/detach, 14POST /account/tags/update, 14ANY /account/settings/orders/resend, 26

/apiGET /api/v1/users/(int:user_id)/gogLink/steam/claimProducts,

30GET /api/v1/users/(int:user_id)/gogLink/steam/exchangeableProducts,

29GET /api/v1/users/(int:user_id)/gogLink/steam/linkedAccount,

29GET /api/v1/users/(int:user_id)/gogLink/steam/synchronizeUserProfile,

30

/authGET /auth, 4

/cartGET /cart, 25GET /cart/add/(int:game_id), 25GET /cart/add/series/(int:series_id),

25GET /cart/remove/(int:game_id), 25POST /cart/add, 25

/checkoutGET /checkout, 25GET /checkout/manual/(int:product_id),

25POST /checkout/order/(int:order_id)/remove/(int:game_id),

26ANY /checkout/order/(int:order_id)/add/(int:game_id),

25ANY /checkout/order/(int:order_id)/changeCurrency/(str:currency),

25ANY /checkout/order/(int:order_id)/disableStoreCredit,

26ANY /checkout/order/(int:order_id)/enableStoreCredit,

26

87

Page 92: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

ANY /checkout/order/(int:order_id)/setAsGift,26

ANY /checkout/order/(int:order_id)/setAsNotGift,26

/clientsGET /clients/(int:product_id)/users/(int:user_id)/achievements,

42GET /clients/(int:product_id)/users/(int:user_id)/friends_achievements_unlock_progresses,

43GET /clients/(int:product_id)/users/(int:user_id)/friends_sessions,

43GET /clients/(int:product_id)/users/(int:user_id)/sessions,

43

/content-systemGET /content-system/v1/depots/(int:product_id)/windows/(int:depot_id)/(str:file),

40GET /content-system/v1/manifests/(int:product_id)/(str:os)/(int:build_id)/(str:manifest_id).json,

39GET /content-system/v1/manifests/(int:product_id)/(str:os)/(int:build_id)/repository.json,

37GET /content-system/v2/meta/(str:hash),

40

/desktop-galaxy-clientGET /desktop-galaxy-client/config.json,

34

/friendsGET /friends/invite/(int:user_id), 20GET /friends/invites/(int:user_id)/accept,

20GET /friends/invites/(int:user_id)/decline,

20GET /friends/remove/(int:user_id), 20POST /friends/search, 19

/gamesGET /games/ajax/filtered, 21

/orderANY /order/checkStatus/(int:order_id),

26

/paymentANY /payment/ping/(int:order_id), 26ANY /payment/process/(int:order_id), 26

/productsGET /products, 33GET /products/(int:product_id), 30GET /products/(int:product_id)/(str:dl_url),

33

GET /products/(int:product_id)/os/(str:os)/builds?generation=2,36

/public_wishlistGET /public_wishlist/(int:user_id)/search,

25

/reviewsGET /reviews/product/(int:game_id).json,

27POST /reviews/add/product/(int:game_id).json,

29POST /reviews/rate/product/(int:game_id).json,

28POST /reviews/report/review/(int:review_id).json,

28POST /reviews/vote/review/(int:review_id).json,

28

/statusesGET /statuses, 44OPTIONS /statuses, 43

/tokenGET /token, 4

/userGET /user/changeCurrency/(str:currency),

18GET /user/changeLanguage/(str:language),

18GET /user/data/games, 8GET /user/games_rating.json, 11GET /user/reviewTipsStatus.json, 6GET /user/review_votes.json, 12GET /user/set-redirect-url, 6GET /user/wishlist.json, 12GET /user/wishlist/add/(int:product_id),

13GET /user/wishlist/remove/(int:product_id),

13

/userData.jsonGET /userData.json, 5

/usersGET /users/(int:user_id), 44GET /users/(int:user_id)/block, 20GET /users/(int:user_id)/friends, 36GET /users/(int:user_id)/invitations,

36GET /users/(int:user_id)/unblock, 21GET /users/info/(int:user_id), 6

88 HTTP Routing Table

Page 93: GOG-API Documentation · project, so don’t be surprised if something is missing. But now get ready for a wild ride into a world where GET and POST don’t mean anything and consistency

GOG-API Documentation, Release 0.1

POST /users/(int:user_id)/status, 43DELETE /users/(int:user_id)/status, 43

/walletGET /wallet/transactions/(str:currency)/(int:page),

26POST /wallet/funds, 26ANY /wallet/recommendedProducts, 26

HTTP Routing Table 89