# List tweets

`GET https://api.twittrapi.com/lists/tweets`

Tweets from the members of a list, newest first.

HTML page: https://www.twittrapi.com/docs/reference/lists-tweets

## Parameters

| Name | In | Type | Required | Default | Description |
| --- | --- | --- | --- | --- | --- |
| `listId` | query | string | yes |  | Numeric list ID, the number in the list URL (x.com/i/lists/<listId>). |
| `count` | query | integer | no | 20 | Number of tweets to ask X for. Sent to X as is; X treats it as a hint and decides how many it returns (follower and following pages often hold 50 to 70 users for count=20). A value that is not a number falls back to 20. |
| `cursor` | query | string | no |  | Bottom cursor from the previous page. Leave it out for the first page. See Pagination. |

Every read endpoint also accepts `format=simple` (or the header `X-Response-Format: simple`) for compact, flat JSON with a fixed schema. Same price.

Paginated: pass the bottom cursor of one page as `cursor` to get the next. Each page is one billed call.

## Response

Raw JSON of X's ListLatestTweetsTimeline query.

With `format=simple`: Collection of Tweet objects: {data: [Tweet], nextCursor, previousCursor, hasNextPage}.

## Errors

| Status | When |
| --- | --- |
| 400 | listId is missing or not numeric. |

Shared errors (401 missing key, 402 no balance, 429 rate limit, 5xx) are listed on https://www.twittrapi.com/docs/helpful-infos/error-handling. Calls that fail with 400, 408, 409 or a 5xx error are refunded.

## Example request

curl:

```bash
curl 'https://api.twittrapi.com/lists/tweets?listId=84839422' \
  --header 'X-API-KEY: YOUR_API_KEY'
```

Python:

```python
from twittrapi import TwittrAPI

client = TwittrAPI(api_key="YOUR_API_KEY")
data = client.lists.tweets("84839422")
```

Node.js:

```js
import { TwittrAPI } from "twittrapi";

const client = new TwittrAPI({ apiKey: process.env.TWITTRAPI_API_KEY });
const data = await client.lists.tweets({ listId: "84839422" });
```

RapidAPI:

```bash
curl 'https://twitter-aio.p.rapidapi.com/lists/tweets?listId=84839422' \
  --header 'x-rapidapi-key: YOUR_RAPIDAPI_KEY' \
  --header 'x-rapidapi-host: twitter-aio.p.rapidapi.com'
```

## Example response

Shortened: arrays keep their first items and long strings are cut.

Raw (default):

```json
{
  "data": {
    "list": {
      "tweets_timeline": {
        "timeline": {
          "instructions": [
            {
              "entries": [
                {
                  "content": {
                    "__typename": "TimelineTimelineItem",
                    "clientEventInfo": {
                      "component": "suggest_organic_list_tweet",
                      "details": {
                        "timelinesDetails": {
                          "injectionType": "OrganicListTweet"
                        }
                      },
                      "element": "tweet"
                    },
                    "entryType": "TimelineTimelineItem",
                    "itemContent": {
                      "__typename": "TimelineTweet",
                      "itemType": "TimelineTweet",
                      "tweetDisplayType": "Tweet",
                      "tweet_results": {
                        "result": {
                          "__typename": "Tweet",
                          "core": {
                            "user_results": {
                              "…": "…"
                            }
                          },
                          "edit_control": {
                            "edit_control_initial": {
                              "…": "…"
                            },
                            "initial_tweet_id": "2108944664455676146"
                          },
                          "grok_analysis_button": true,
                          "is_translatable": false,
                          "legacy": {
                            "bookmark_count": 1,
                            "bookmarked": false,
                            "conversation_id_str": "2000000000000000001",
                            "created_at": "Sat Oct 10 15:36:16 +0000 2026",
                            "display_text_range": [
                              "…"
                            ],
                            "entities": {
                              "…": "…"
                            },
                            "extended_entities": {
                              "…": "…"
                            },
                            "favorite_count": 22,
                            "favorited": false,
                            "full_text": "Example text.",
                            "id_str": "2000000000000000001",
                            "is_quote_status": false,
                            "lang": "en",
                            "possibly_sensitive": false,
                            "possibly_sensitive_editable": true,
                            "quote_count": 1,
                            "reply_count": 4,
                            "retweet_count": 6,
                            "retweeted": false,
                            "user_id_str": "1000000000000000001"
                          },
                          "previous_counts": {
                            "bookmark_count": 0,
                            "favorite_count": 0,
                            "quote_count": 0,
                            "reply_count": 0,
                            "retweet_count": 0
                          },
                          "rest_id": "2000000000000000001",
                          "unmention_data": {},
                          "views": {
                            "count": "7500",
                            "state": "EnabledWithCount"
                          }
                        }
                      }
                    }
                  },
                  "entryId": "tweet-2000000000000000001",
                  "sortIndex": "2109016349601693694"
                },
                "… 2 more"
… (14 more lines)
```

Simple (`format=simple`):

```json
{
  "data": [
    {
      "id": "2000000000000000001",
      "url": "https://x.com/example_user_1/status/2000000000000000001",
      "text": "Example text.",
      "createdAt": "2026-10-10T15:36:16Z",
      "lang": "en",
      "author": {
        "id": "1000000000000000001",
        "username": "example_user_1",
        "name": "Example User 1",
        "description": "Example",
        "location": "",
        "url": null,
        "createdAt": "2011-05-17T17:54:29Z",
        "avatarUrl": "https://pbs.twimg.com/profile_images/1000000000000000000/example.jpg",
        "bannerUrl": "https://pbs.twimg.com/profile_banners/1000000000000000000/1700000000",
        "verified": true,
        "verifiedType": "Business",
        "protected": false,
        "counts": {
          "followers": 13830347,
          "following": 2351,
          "tweets": 33558,
          "likes": 30446,
          "media": 6619,
          "listed": 8963
        },
        "pinnedTweetIds": [
          "2092752406081634501"
        ],
        "isAutomated": false
      },
      "counts": {
        "likes": 22,
        "retweets": 6,
        "replies": 4,
        "quotes": 1,
        "bookmarks": 1,
        "views": 7500
      },
      "media": [
        {
          "type": "photo",
          "url": "https://pbs.twimg.com/media/EXAMPLE.jpg",
          "previewUrl": "https://pbs.twimg.com/media/EXAMPLE.jpg",
          "width": 982,
          "height": 1228,
          "altText": null,
          "durationMs": null
        }
      ],
      "urls": [],
      "hashtags": [],
      "mentions": [],
      "replyTo": null,
      "quoted": null,
      "retweetOf": null,
      "conversationId": "2000000000000000001",
      "isPinned": false,
      "source": null,
      "article": null
    }
  ],
  "nextCursor": "DAABCgABHUS7Mid__58KAAIdQPHo7lqQcQgAAwAAAAIAAA",
  "previousCursor": "DAABCgABHUS7MieAJxEKAAIdRI-M3ZvQJQgAAwAAAAEAAA",
  "hasNextPage": true
}
```
