---
title: "List Profile Posts"
method: GET
path: "/api/public/profiles/{handle}/posts"
tags: ["posts"]
---

# List Profile Posts

`GET /api/public/profiles/{handle}/posts`

## Request

- Base URL: `https://api.parlel.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.parlel.com/api/public/profiles/{handle}/posts`
- Auth: none declared

Everything one published profile has posted.

This is where the profile page's "see all" goes, and it is deliberately
anonymous and shared-cacheable: no viewer is resolved, so no per-viewer field
can appear and a CDN may hold one copy for everybody. That also makes it the
endpoint an external agent should read, which is why it is guessable from the
profile URL rather than living under a different prefix.

An unpublished or unknown handle is a 404 either way, which is what keeps an
unlisted profile indistinguishable from one that never existed.

## Path parameters

- `handle` string, required

## Query parameters

- `limit` integer
- `cursor` string, nullable

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

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