---
title: "List posts published on the platform"
method: GET
path: "/v1/accounts/{accountId}/posts"
tags: ["Accounts"]
---

# List posts published on the platform

`GET /v1/accounts/{accountId}/posts`

Returns the 25 most recent posts that exist on the platform for a connected account, read
live from the platform API. This covers everything on the account, including posts that
were never created through Zernio.

Use it to obtain the platform's own post id, which the analytics endpoints take as input.
On YouTube the returned `id` is the video ID that `GET /v1/analytics/youtube/daily-views`,
`/video-retention` and `/demographics` expect as `videoId`, so this endpoint is what backs
a video picker in your own UI.

Not every field applies to every platform: `reactionCount` is Facebook and LinkedIn,
`shareCount` is platform dependent, `cid` is the Bluesky content id needed to reply, and
`subreddit` is Reddit only. Absent fields are omitted from the response.

The account's token is refreshed before the call when it has expired. When the refresh
cannot recover it, the response is a 401 with code `TOKEN_EXPIRED` and the account has to
be reconnected.

## Path parameters

- `accountId` string, required

## Response `200`

Posts list

- object
  - `status` 'success'
  - `posts` object[]
    - `id` string — The platform's own post id (the video ID on YouTube)
    - `platform` string
    - `message` string — Caption or title, empty string when the post has no text
    - `createdTime` string, date-time
    - `permalink` string — Public URL of the post on the platform
    - `picture` string — Thumbnail or media URL
    - `mediaType` string
    - `commentCount` integer
    - `likeCount` integer
    - `reactionCount` integer — Facebook and LinkedIn only
    - `shareCount` integer
    - `cid` string — Bluesky content id, required to reply to the post
    - `subreddit` string — Reddit only
  - `lastUpdated` string, date-time

## Other responses

- `400` — Invalid accountId, platform does not support posts listing, or the account has no access token
- `401` — Unauthorized
- `403` — X analytics capability not enabled for this account (code X_ANALYTICS_NOT_ENABLED)
- `404` — Resource not found

## Changes

- **2026-08-31** `bdd771244d76` — 1 info
  - added the non-success response with the status `403`
- **2026-08-29** `e6f7a453bfb1` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/zernio/apis/zernio-api/changes/v1/accounts/:accountId/posts/get.md)

---

[API](https://skmtc.dev/zernio/apis/zernio-api.md) · [All operations](https://skmtc.dev/zernio/apis/zernio-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/zernio/zernio-api/revisions/2d81890d21d5/schema)
