---
title: "GET /api/v1/x/trends/history"
method: GET
path: "/api/v1/x/trends/history"
tags: ["Trends"]
---

# GET /api/v1/x/trends/history

`GET /api/v1/x/trends/history`

## Request

- Base URL: `https://xquik.com`
- URL: `https://xquik.com/api/v1/x/trends/history`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer
  - none

Returns the Twitter trends archive of a place, as the lists X showed there over a range of time. Use it for trending on Twitter yesterday, last week or any day since 2026-10-13 02:20 UTC. Xquik stores 1 list per place every 5 minutes and keeps it for 25 months. Pick the place by woeid, country or location name, the range with from & to, and the step with every. from & to take a time or a span back from now, such as 7d, so a schedule can read the last day on every run. Each step returns the first list stored in it, with its own time. Each returned list costs 1 credit, so 24 lists cost 24 credits. A step with no stored list returns none and costs nothing. 1 request returns 24 lists, or up to 100 with limit.

## Query parameters

- `woeid` integer
- `country` string
- `location` string
- `from` string
- `to` string
- `every` string
- `count` integer
- `limit` integer
- `cursor` string
- `fields` string
- `omit` string

## Response `200`

Stored trend lists of the place, oldest first

- object
  - `fromTime` string, date-time, required: Start of the range as Xquik read it. A span such as 7d shows here as the time it counted back to.
  - `toTime` string, date-time, required: End of the range as Xquik read it, which the range leaves out. Without to, it is the time of the first request.
  - `snapshots` object[], required: 1 stored list per step, oldest first. A step with no stored list is left out.
    - `capturedAt` string, date-time, required: When Xquik read this stored list from X. Xquik never estimates it.
    - `count` integer, required: Trends in this list.
    - `trends` object[], required
      - `name` string, required
      - `description` string
      - `query` string
      - `promotedContent` string, nullable: X's promotion ID of a promoted trend. Null for the others.
      - `rank` integer: The trend's place in X's list at that time.
      - `tweetVolume` integer, nullable: X's post count for the trend at that time, when X showed one.
      - `url` string, uri: The trend's search link on X.
  - `count` integer, required: Lists returned & charged.
  - `woeid` integer, required
  - `location` TrendLocation: A place X offers trends for.
    - `woeid` integer, required: Location ID. Pass it as woeid to /x/trends.
    - `name` string, required
    - `country` string, nullable, required: Country name. Null for Worldwide.
    - `countryCode` string, nullable, required: 2-letter country code. Null for Worldwide.
    - `placeType` string, nullable, required: X's kind of place. Town, Country, Supername for Worldwide, or Unknown.
    - `placeTypeCode` integer, nullable, required: X's numeric code for the kind of place.
    - `parentWoeid` integer, nullable, required: WOEID of the country or region above it. Null for Worldwide.
    - `url` string, nullable, required: X's legacy Yahoo GeoPlanet reference. It may not resolve.
  - `has_next_page` boolean, required: Whether the range holds more lists.
  - `next_cursor` string, required: Send it as cursor for the next lists. Empty on the last page.

## Other responses

- `400`: Unknown country or location, a time or step that does not read, a range that ends before the first stored list, or a value past its maxLength
- `401`: Non-MPP paid reads require Bearer authentication. Without credentials, the answer offers a guest checkout but does not create it. Invalid credentials return a plain error. Confirm before using any offered action.
- `402`: Payment required. MPP reads include `WWW-Authenticate`. Authenticated reads include balances, plus checkout when the key can open it. A key that reads only gets the account page instead. A failed request never creates checkout. A caller on a plan gets top-up only, plus `credits_renew_at` when the plan renews. Guest keys offer top-up.
- `424`: Dependency unavailable, unauthorized, or limited. Default v1 uses 502. Best-practice responses use 424 for transparent dependency failures. Search answers 424 `search_unavailable` when X fails the query itself, or when its filters matched none of the last 3,000 posts read. The message says how far back the search read.
- `429`: Too many requests right now. Each user gets 500 reads a second. Each minute allows 120 writes & 60 deletes. `x_api_rate_limited` means X limits this read for now. Neither answer costs anything. Wait for the seconds in `Retry-After`, then retry.
- `500`: Unexpected error.
- `502`: Dependency unavailable, unauthorized, or limited. Default v1 uses 502. Best-practice responses use 424 for transparent dependency failures. Search answers 424 `search_unavailable` when X fails the query itself, or when its filters matched none of the last 3,000 posts read. The message says how far back the search read.
- `503`: Retry x_api_unavailable after Retry-After. With X-Xquik-Busy, retry until your deadline.
- `default`: Unexpected error.

## Changes

- **2026-10-20** `45942c75fdc2`: 18 warning
  - added the new `topup_in_progress` enum value to the `allOf[#/components/schemas/Error]/error/oneOf[subschema #1: LegacyErrorCode]/` response property for the response status `429`
  - added the new `topup_in_progress` enum value to the `allOf[#/components/schemas/Error]/error/oneOf[subschema #2: StructuredError]/code` response property for the response status `429`
  - added the new `topup_in_progress` enum value to the `error/oneOf[subschema #1: LegacyErrorCode]/` response property for the response status `400`
  - added the new `topup_in_progress` enum value to the `error/oneOf[subschema #1: LegacyErrorCode]/` response property for the response status `424`
  - …14 more

[Operation history](https://skmtc.dev/xquik-dev/apis/xquik-api/changes/api/v1/x/trends/history/get.md)

---

[API](https://skmtc.dev/xquik-dev/apis/xquik-api.md) · [All operations](https://skmtc.dev/xquik-dev/apis/xquik-api/llms.txt) · [OpenAPI document](https://skmtc.dev/xquik-dev/apis/xquik-api/revisions/45942c75fdc2?raw)
