---
title: "Get City Posts"
method: GET
path: "/api/v1/blog/cities/{city_slug}/posts"
tags: ["blog"]
---

# Get City Posts

`GET /api/v1/blog/cities/{city_slug}/posts`

## Request

- Base URL: `https://mcp.fless.io` (the document declares no server; this is the origin it was published from)
- URL: `https://mcp.fless.io/api/v1/blog/cities/{city_slug}/posts`
- Auth: none declared

Get all published posts for a city.

- **city_slug**: City URL slug
- **page**: Page number (1-indexed)
- **per_page**: Items per page (max 50)

## Path parameters

- `city_slug` string, required

## Query parameters

- `page` integer: Page number
- `per_page` integer: Items per page

## Response `200`

Successful Response

- BlogPostListResponse: Paginated blog post list response.
  - `posts` BlogPostSummary[], required
    - `id` integer, required
    - `slug` string, required
    - `title` string, required
    - `excerpt` string, nullable
    - `featured_image_url` string, nullable
    - `city_id` integer, nullable
    - `city_name` string, nullable
    - `city_slug` string, nullable
    - `topic_slug` string, nullable
    - `topic_name` string, nullable
    - `topic_category` string, nullable
    - `author_name` string, nullable
    - `published_at` string, date-time, nullable
    - `reading_time_minutes` integer, nullable
    - `is_featured` boolean
    - `is_published` boolean
    - `review_status` string
    - `review_notes` string, nullable
    - `reviewed_at` string, date-time, nullable
    - `reviewed_by` string, nullable
  - `total` integer, required
  - `page` integer, required
  - `per_page` integer, required
  - `has_more` boolean, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/fless/apis/apartment-hunting-platform.md) · [All operations](https://skmtc.dev/fless/apis/apartment-hunting-platform/llms.txt) · [OpenAPI document](https://skmtc.dev/fless/apis/apartment-hunting-platform/revisions/f542b37a2fcf?raw)
