List recent public AI items

Start here for feeds, widgets and 'what is new' views. Covers the last 7 days only. Send If-None-Match and you get a 304 with an empty body whenever nothing changed. To follow new items, page back with cursor only until you reach an id you already have. Do not use this to maintain a complete local copy of the selected set: it is windowed, so anything older than 7 days silently falls out. Use /api/v1/selected/snapshot plus /api/v1/selected/changes for that.

get/api/v1/items

Request

  • Base URL: https://bithot.news
  • URL: https://bithot.news/api/v1/items
  • Auth: none declared

Query parameters

mode'selected' | 'all'
categorystring

Current values: projects, memecoins, products, markets, investment, industry, security, tip, opinion.

Example:projects
window'24h' | '7d'
by'timeline' | 'published'

Which timestamp defines the window and ordering. 'timeline' (default) matches the site's published timeline: historical or backfilled items can retain their source publication time, including items first found more than 72h after publication; ordinary new items use discovery time, and selected representatives follow their reading group's first appearance. 'published' uses source publication time, falling back to discovery time when it is unknown. publishedAt may be null when the original time is unknown; discoveredAt is the site's receipt time. These returned fields are not client-side cursor or sort keys; pass the returned cursor unchanged.

qstring

Leading and trailing whitespace is removed before validation; the remaining value must contain 2 to 200 Unicode code points.

limitinteger
cursorstring

Opaque, query-bound keyset cursor for the rolling window. It carries no issue time and does not expire on a timer, but the window keeps moving: once the cursor's own anchor has dropped out of the requested 24h or 7d window it is rejected with invalid_cursor, so restart the query from the first page instead of persisting a cursor across days. Older rows may also naturally leave the window between requests. Use selected snapshot + changes for an exact mirror.

Headers

User-Agentstring

The client's normal User-Agent (optional; any value works).

If-None-Matchstring

Previously received ETag for this exact URL. A match returns 304 without a response body.

Response

OK

schemaVersionunknown required

Example response

{
  "query": {
    "category": "projects"
  },
  "items": [
    {
      "category": "projects"
    }
  ]
}

Changes

No recorded changes to this operation across all 1 revision of this API.