Skip to content
Agent

Connect Gameshot to your agent

Skill, MCP, RSS, and API read the same data: the selection, hot topics, and the daily, weekly, and monthly. Pick the one that fits your tool. All of them are anonymous and read-only. No account, and no API key.

UpVersion 3.0.0Anonymous, read-only · no key
REST API · 3.0.0

Anonymous GET. No token.

No token. A browser, curl, and a language's default HTTP client can call it directly. Paths live under /api/v1. Fields and error codes follow OpenAPI.

First request
curl --compressed 'https://gameshot.games/api/v1/items?mode=selected&window=24h&limit=20'

Cheaper, and faster

  1. 01
    Turn on compression

    Add --compressed to curl. Other clients should accept gzip or br. Compressed JSON is about a quarter to an eighth of the raw size.

  2. 02
    Send the ETag

    Keep the ETag from the response and send it next time as If-None-Match. An unchanged body comes back as 304, with no payload.

  3. 03
    Poll on a cadence

    Items and hot topics at most once a minute. The daily once after 06:30, and the weekly and monthly once after they publish. When paging backwards, stop at an item you already have.

How often it changes: new items arrive through the day, the selection changes a handful of times to a few dozen times a day, and there is one daily at 06:30, one weekly on Monday at 10:00, and one monthly on the 1st at 10:30, Beijing time.

Endpoints

PathWhat it is forHow often
Items
/api/v1/itemsSelected items, or all public updates from the last 7 days. Filter by category, window, or keyword.At most once a minute
Hot topics and events
/api/v1/hot-topicsThe current hot list, top 10At most once a minute
/api/v1/stories/{publicId}One event: the report timeline, the running digest, and related eventsWhen you need it
Daily
/api/v1/dailies/latestThe latest dailyOnce after 06:30
/api/v1/dailies/{date}The daily for a date. A withdrawal drops the citation.Revalidate the ETag before using an expired cache
/api/v1/dailiesAn index of daily datesOnce a day
Weekly and monthly
/api/v1/weeklies/latestThe latest weekly: lead, overview, and the week's stories by sectionOnce after Monday 10:00
/api/v1/weeklies/{week}One ISO week, such as 2026-W39. A withdrawal drops the citation.Revalidate the ETag before using an expired cache
/api/v1/weekliesAn index of weekliesOnce a week
/api/v1/monthlies/latestThe latest monthlyOnce after the 1st at 10:30
/api/v1/monthlies/{month}One month, such as 2026-09Revalidate the ETag before using an expired cache
/api/v1/monthliesAn index of monthliesOnce a month
For an agent
/api/v1/agentThe guide for an agent. The listed addresses return prepared Markdown.When you need it
Full selection sync
/api/v1/selected/snapshotThe whole current selection, paged until you have it allOnly the first time
/api/v1/selected/changesLater additions, edits, and items dropped from the selectionEvery few minutes

Common uses

bash
# First time: save the ETag response header
curl --compressed -i 'https://gameshot.games/api/v1/items?mode=selected&window=24h&limit=20'
# After that, at most once a minute, send the ETag. 304 means nothing changed
curl --compressed -i -H 'If-None-Match: <previous ETag>' 'https://gameshot.games/api/v1/items?mode=selected&window=24h&limit=20'

To page backwards, send page.nextCursor as cursor and stop when you reach an item you already have. Do not walk the whole 7 days again.

Errors and recovery

400
A bad parameter. Fix it from the OpenAPI spec and the returned code. Do not widen the query automatically. An invalid cursor, or one outside the window, returns invalid_cursor. Start again from the first page.
409
snapshot_required: the incremental cursor cannot continue safely. Take a full snapshot again.
429
Too many requests. Wait for Retry-After. Do not retry in parallel.
5xx
Back off, and keep using the last successful result. The public service does not promise an SLA.

An anonymous call is not a licence for every use. See the terms.