List posts
list_postsRecent posts with status, publishes, mediaIds and, on a rejected post, rejectionReason — the person's own words on what to change with update_post (often empty after a one-tap rejection). Filter with status (one or several), limit, and from/to on the scheduled time. A post still waiting carries approval_link. filter echoes what applied. An empty list with nothing filtered adds never_posted_message, which says what to offer them next.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Only posts whose scheduled time is at or before this instant. | |
| from | No | Only posts whose scheduled time is at or after this instant (ISO 8601, Z or offset). With `from` or `to` the list runs soonest first and leaves out posts that have no time yet. | |
| limit | No | How many, newest first (default 50, max 100) | |
| status | No | Only posts in this state (or any of these). Omit for all of them. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ok | No | Present and false only on a refusal. | |
| data | No | Newest first, camelCase here unlike the rest of this server. Up to `limit` (50 by default). | |
| error | No | What was refused, in a sentence, when `ok` is false. | |
| filter | No | What actually applied — null status means nothing was filtered. | |
| retriable | No | False when asking again cannot change the answer. | |
| error_code | No | Machine reason for a refusal. | |
| replaced_by | No | The id the post has now, when you asked with one an edit retired. An edit gives a post a new id: get_delivery_receipt and get_post_metrics answer for this current version (and `asked_for` is the id you sent); update_post and delete_post refuse with error_code `replaced`. Use this id from here on. | |
| never_posted_message | No |