---
title: "List Scheduled Tweets"
method: GET
path: "/scheduled/list"
tags: ["Write Actions"]
---

# List Scheduled Tweets

`GET /scheduled/list`

## Request

- Base URL: `https://api.twitterapis.com/twitter`
- URL: `https://api.twitterapis.com/twitter/scheduled/list`
- Auth: HTTP bearer

List every pending scheduled post on the account behind your registered session. Each row carries the id, its text, its execute_at in epoch SECONDS, X's own state label, and thread_truncated for a thread whose text is only its first tweet. Ordering is X's: pass ascending=true to ask for the oldest first. Billed at $0.0016 per call. Cost: $0.0016 per call.

## Query parameters

- `ascending` boolean: Pass true to ask X for the oldest row first. Anything else, including omitting it, sends ascending=false, which is what X's own composer sends. The resulting order is X's and is not re-sorted here.
- `fields` string
- `compact` '1'

## Response `200`

List the posts queued to publish on your own account.

- object
  - `scheduled` object[]: The pending scheduled posts on this account. An empty array with no partial flag is an honest empty queue.
    - `scheduled_tweet_id` string: Numeric ID of the scheduled post. This is the id to pass to scheduled/delete.
    - `text` string, nullable: The post body. Null when that row's text could not be read.
    - `thread_truncated` boolean: True when the row is a THREAD and text is only its first tweet. False for an ordinary single-tweet post.
    - `execute_at` integer, nullable: When the post publishes, in epoch SECONDS. X answers this operation in MILLISECONDS and the value is converted here, so one unit is spoken on both sides of the API and a value read here can be sent straight back to scheduled/create. Null when the instant could not be read.
    - `state` string, nullable: X's own scheduling state for the row, for example "Scheduled", passed through verbatim. Null when X sent none.
  - `count` integer: Number of rows in scheduled.
  - `partial` boolean: Present and true only when the answer was read but not fully understood. ANY ONE of these sets it: a row was dropped, a row's text could not be read, a row's instant could not be read, a row's thread shape could not be read, or the envelope itself could not be read. ABSENT on a clean read, including a clean empty queue, so an empty scheduled array with no partial flag means nothing is queued rather than that we could not tell.

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `402`: Insufficient credits
- `403`: Forbidden
- `404`: Not found
- `429`: Rate limited
- `5XX`: Server error

---

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