---
title: "List posts"
method: GET
path: "/api/posts"
---

# List posts

`GET /api/posts`

## Request

- Base URL: `https://octopost.ink`
- URL: `https://octopost.ink/api/posts`
- Auth: HTTP bearer

All posts in the account, newest first. Filter queued or approval-pending posts with `status`.

## Query parameters

- `status` 'queued' | 'pending'

## Response `200`

Posts

- object
  - `success` boolean
  - `posts` Post[]
    - `id` string
    - `content` string
    - `platforms` string[]
    - `scheduledFor` string, nullable
    - `published` boolean
    - `queueStatus` string, nullable
    - `platformPostIds` object, nullable: Per network: id, url, or error.
    - `createdAt` string

## Other responses

- `401`: Missing or invalid API key. Send `Authorization: Bearer op_...` with the key from https://octopost.ink/dashboard/api-keys.
- `429`: Rate limited (per minute per IP; publishing 50/hour). Retry after the `Retry-After` seconds.
- `500`: Server error. Safe to retry; email hello@greatwork.company if it persists.

---

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