---
title: "Get a post"
method: GET
path: "/posts/{id}"
tags: ["Posts"]
---

# Get a post

`GET /posts/{id}`

## Request

- Base URL: `https://www.postbase.so/api/v1`
- URL: `https://www.postbase.so/api/v1/posts/{id}`
- Auth: HTTP bearer

The post and each channel's status, live URL, error and latest metrics.

## Path parameters

- `id` string, uuid, required

## Response `200`

The post

- object
  - `post` Post
    - `id` string, uuid, required
    - `status` 'draft' | 'scheduled' | 'publishing' | 'published' | 'failed', required
    - `body` string
    - `thread` string[]
    - `scheduled_at` string, date-time, nullable
    - `created_at` string, date-time
    - `media` object[]
      - `url` string, uri
      - `type` string
    - `channels` PostChannel[], required
      - `channel_id` string, uuid, required
      - `platform` string, nullable
      - `handle` string, nullable
      - `status` 'draft' | 'scheduled' | 'publishing' | 'published' | 'failed', required
      - `url` string, uri, nullable: The live post, once published
      - `error` string, nullable: Why it failed
      - `warning` string, nullable: It published, with something to know
      - `retry_at` string, date-time, nullable: When Postbase will retry a failed channel on its own
      - `body` string, nullable: This channel's own text, if any
      - `metrics` object, nullable: Latest likes, impressions, etc.
    - `summary` object
      - `published` integer
      - `failed` integer
      - `pending` integer
    - `warning` string

## Other responses

- `401`: Missing or invalid API key
- `404`: Not found
- `429`: Rate limited

---

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