---
title: "List posts"
method: GET
path: "/blogs/{blogId}/posts"
tags: ["Posts"]
---

# List posts

`GET /blogs/{blogId}/posts`

## Request

- Base URL: `https://api-docs.justblogged.com/api`
- URL: `https://api-docs.justblogged.com/api/blogs/{blogId}/posts`
- Auth: HTTP bearer

Get paginated list of posts with optional filtering and sorting

## Path parameters

- `blogId` string, required

## Query parameters

- `page` integer
- `limit` integer
- `status` 'draft' | 'published' | 'scheduled' | 'all'
- `collectionId` string
- `tagId` string
- `userId` string
- `orderBy` 'createdAt' | 'updatedAt' | 'title' | 'publishedAt'
- `order` 'asc' | 'desc'

## Response `200`

Paginated list of posts

- object
  - `posts` Post[], required
    - `id` string, required
    - `title` string, required
    - `url` string, uri, required
    - `slug` string, required
    - `content` string, required: HTML content
    - `excerpt` string, required: Auto-generated excerpt from content or metadata.description
    - `image` string, uri, nullable
    - `status` 'draft' | 'published' | 'scheduled', required: scheduled is derived from published status with future published_at
    - `published_at` string, date-time, nullable
    - `updated_at` string, date-time, nullable
    - `created_at` string, date-time, required
    - `author` Author, required
      - `id` string, required
      - `name` string, required
      - `bio` string, required
      - `image` string, uri, nullable
      - `metadata` object, required: Public custom author metadata (max 20 fields)
      - `url` string, uri, required: Public author page URL
    - `collection` CollectionRef
      - `id` string, required
      - `name` string, required
      - `slug` string, required
      - `url` string, uri, required
    - `tags` TagRef[], required
      - `id` string, required
      - `name` string, required
    - `metadata` object, required: Custom metadata fields (max 20 fields)
  - `pagination` Pagination, required
    - `page` integer, required
    - `limit` integer, required
    - `total` integer, required
    - `total_pages` integer, required
    - `has_next_page` boolean, required
    - `has_prev_page` boolean, required

## Other responses

- `401`: Authentication required
- `403`: Insufficient permissions

---

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