Skip to main content
GET
NFL & college football game posts API, top or latest
1 credit per post · Up to 20 posts per page · All plans from $0.00012/credit · Supports guest paid reads

Read what X shows about a game

Use GET /x/sports/{league}/games/{id}/posts for the posts on a game’s page on X. Find the game ID with List football games.
  • queryType=Top returns the posts X ranks highest. queryType=Latest returns the newest first.
  • Each post has the same fields as Search tweets returns.
  • query is the X search that finds the posts. X builds it from the teams, hashtags, team accounts & star players, with the game’s time window.
Pass query to Search tweets to add filters such as language, media or minimum likes. A game has posts before kickoff, during the game & after it.

Path parameters

string
required
nfl for the NFL or ncaafb for college football, in any case. Another value gets a free 400 invalid_league.
string
required
Game ID, a number up to 19 digits, such as 2055084502741811200. List football games returns it as id. Another value gets a free 400 invalid_game_id.

Query parameters

string
default:"Top"
Top for the posts X ranks highest or Latest for the newest, in any case. Relevance & Recency work too, & so do the names order & sort. Send the same value with each cursor.
string
next_cursor from the previous page.
number
default:"20"
Posts per page, from 1 to 100. X sends at most 20 per page, & your credits can return fewer.

Choose fields

string
Fields to keep in each row, comma-separated, such as id,text,author.username. Use dots for nested fields. Case & underscores do not matter. A row that lacks a field leaves it out. Cursors, counts & diagnostics always stay. An unknown name returns 400 unknown_field with the valid names, before any read. The price stays the same.
string
Fields to drop from each row, comma-separated, such as entities,media. It takes the same names as fields. With fields, it drops from the kept fields.

Headers

string
Full account key. Sessions and OAuth also work.
string
Bearer xq_your_guest_key_here for paid_reads.

Response

200 OK

object[]
The posts in X’s order, each with its author, text, media & metrics, as Search tweets returns them.
boolean
true while more posts follow.
string
Pass it as cursor for the next page. Empty on the last page.
string | null
The X search that finds this game’s posts for the order you asked. null when X sends a timeline Xquik cannot read.

400 Invalid input

queryType is not Top, Latest, Relevance or Recency. A league other than nfl or ncaafb gets invalid_league, & a game ID that is not a number gets invalid_game_id. These answers are free.

404 Game not found

X knows no game with this ID. This answer is free.

401 Unauthenticated

Anonymous requests get WWW-Authenticate: Bearer and a guest wallet checkout action. This is not a Payment challenge.

402 Payment required

Account keys get account options. Guest keys get guest top-up only. No checkout starts automatically. Confirm any payment action.

502 X API unavailable

The read service returned an error. Retry after a short delay.

503 Service busy

Xquik is busy, or X sent an answer Xquik cannot read. Wait for the Retry-After header, then send the request again. The request costs nothing.