gg.deals APIgg.deals ↗
Search games, browse current deals across stores, and retrieve historical price data from GG.deals via 4 structured API endpoints.
curl -X GET 'https://api.parse.bot/scraper/f8279109-dfa1-45a0-bc90-5d88dca62914/search_games?query=cyberpunk' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for games by title on GG.deals. Returns a list of matching games with their current lowest prices and discounts.
| Param | Type | Description |
|---|---|---|
| queryrequired | string | Search query for game title (e.g. 'elden ring', 'cyberpunk') |
{
"type": "object",
"fields": {
"games": "array of game objects with game_id, name, slug, image_url, link, lowest_price, and discount"
},
"sample": {
"data": {
"games": [
{
"link": "https://gg.deals/game/elden-ring/",
"name": "ELDEN RING",
"slug": "elden-ring",
"game_id": "119003",
"discount": "-41%",
"image_url": "https://img.gg.deals/31/ef/b655fb330dcd049aa385e36c1de20ed8d0df_249xr143.jpg",
"lowest_price": "$35.13"
}
]
},
"status": "success"
}
}About the gg.deals API
The GG.deals API exposes 4 endpoints for querying game prices, active deals, and historical price charts across PC and console storefronts. Use search_games to find titles by name and get their current lowest prices, get_deals to paginate through live discounts with DRM and platform filters, and get_game_price_history to retrieve timestamped price data points for both official retailers and keyshops.
Searching and Browsing
The search_games endpoint accepts a query string and returns an array of matching game objects, each including game_id, name, slug, image_url, link, lowest_price, and discount. The slug and game_id values returned here feed directly into the two detail endpoints.
The get_deals endpoint lists current deals with a range of optional filters: drm (e.g., Steam, GOG), platform (1 for PC, 2 for Xbox, 3 for PlayStation, 4 for Switch), min_discount, min_price, max_price, store, and sort (by date, best, expiry, or price). Results are paginated via the page parameter, and each deal object includes current_price, original_price, discount, store_name, store_logo, and drm.
Game Detail and Price Offers
The get_game_detail endpoint takes a slug and returns a full picture of a game's current availability: an offers array with per-store entries showing store_type, store_name, price, drm, and any active coupon. It also returns aggregate ratings (score and count) and metadata covering description, release_date, and brand.
Price History
The get_game_price_history endpoint accepts either a slug or a game_id and returns chartData with separate retail and keyshops arrays. Each data point carries x (timestamp in milliseconds), y (price), shop (store name), and name (date range label). The currency object in the response includes decimals, prefix, and suffix for formatting prices correctly in any display context.
- Alert users when a specific game drops below a target price using
get_game_price_historytimestamp data - Build a multi-store deal aggregator filtered by DRM platform (Steam, GOG) using
get_deals - Compare official retailer vs. keyshop pricing for any title via the
offersarray inget_game_detail - Track discount trends over time for a wishlist by querying
chartDataretail and keyshop arrays - Filter deals by platform ID to surface Switch or PlayStation-specific discounts
- Show coupon codes alongside store prices by reading the
couponfield inget_game_detailoffers - Populate a game search autocomplete with cover images and lowest prices from
search_gamesresults
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does GG.deals have an official developer API?+
What does `get_game_price_history` distinguish between retail and keyshop prices?+
chartData object contains two separate arrays: retail for prices from official storefronts and keyshops for third-party key sellers. Each entry in both arrays includes a Unix timestamp in milliseconds (x), a price value (y), the store name (shop), and a human-readable date range label (name), so you can plot or compare the two series independently.Can I filter `get_deals` results by both DRM type and platform at the same time?+
get_deals endpoint accepts drm (e.g., 'Steam') and platform (integer: 1 PC, 2 Xbox, 3 PlayStation, 4 Switch) as independent optional parameters. You can pass both in a single request along with min_discount, min_price, max_price, and sort to narrow results further.Does the API return user reviews or community wishlists from GG.deals?+
get_game_detail endpoint returns aggregate ratings with a score and count, but individual user reviews, community wishlists, and forum activity are not covered by the current endpoints. You can fork this API on Parse and revise it to add an endpoint targeting that data.Is historical price data available for all platforms, or only PC?+
get_game_price_history endpoint resolves data by slug or game_id regardless of platform. However, the depth and availability of keyshop history may vary by title — games with low keyshop activity may return sparse or empty keyshops arrays in chartData.