---
title: "Creator Posts"
method: POST
path: "/public/v1/creators/content/posts/"
tags: ["Creator Posts"]
---

# Creator Posts

`POST /public/v1/creators/content/posts/`

Fetch recent posts for a creator on a given platform.

**What you get**

- Returns a list of recent posts with metadata including post ID, URL, caption, media URLs, timestamps, and engagement metrics (likes, comments, views, shares).
- Supports Instagram, TikTok, and YouTube platforms.
- Uses cursor-based pagination via `next_token` for fetching additional pages of results.
- Page sizes are platform-specific:
&nbsp;&nbsp;**Instagram** — fixed at 12 posts per page (not configurable).
&nbsp;&nbsp;**TikTok** — default 30, max 35.
&nbsp;&nbsp;**YouTube** — default 30, max 50.

**Credits**

- 0.03 credits per successful request. If no data is returned, no credits are deducted.

<div class="ic-ai-prompt-root" data-endpoint="creator-posts"></div>

## Request body

- CreatorPostsQuery
  - `count` integer — Number of posts to fetch per page. Clamped to platform-specific limits.
  - `pagination_token` string — Cursor for fetching the next page of results.
  - `platform` string, required — Social media platform. Allowed: instagram, tiktok, youtube.
  - `handle` string, required — Creator identifier — username, profile URL, or YouTube channel ID (UC...).

## Response `200`

- CreatorPostsResponse
  - `credits_cost` number, double, nullable
  - `result` CreatorPostsResult, required
    - `items` PostItemModel[], required
      - `pk` string, required
      - `taken_at` integer, nullable
      - `url` string, nullable — The creator's profile URL.
      - `device_timestamp` integer, nullable
      - `media_url` string, nullable
      - `media_id` string, nullable
      - `image_versions` ImageVersionsModel, required
        - `candidates` MediaCandidateModel[], required
          - `url` string, nullable — The creator's profile URL.
          - `width` integer, nullable
          - `height` integer, nullable
      - `media_type` integer, required
      - `user` UserInfoModel, required
        - `pk` string, required
        - `username` string, nullable — The creator's username on the platform.
        - `full_name` string, nullable
        - `profile_pic_url` string, nullable — URL to the creator's profile picture. This URL is temporary and expires after 24 hours. To keep the image, download it to your own storage before it expires.
      - `engagement` EngagementModel, required
        - `likes` integer, nullable
        - `comments` integer, nullable
        - `views` integer, nullable
      - `caption` string, nullable
      - `thumbnails` object, nullable
    - `num_results` integer, required
    - `more_available` boolean, required
    - `next_token` string, nullable
    - `status` string

## Other responses

- `400` — Bad request — invalid input or unsupported state.
- `401` — Unauthorized — missing or invalid API key.
- `403` — Forbidden — caller is not permitted to perform this action.
- `422` — Unprocessable entity — validation failed.
- `429` — Too Many Requests — rate or capacity limit exceeded. Inspect the `Retry-After` header and the `retry_after` body field for the wait time in seconds.

## Changes

- **2026-08-18** `87e654ac822e` — 3 info
  - added the media type `application/json` for the response with the status `400`
  - added the non-success response with the status `403`
  - added the non-success response with the status `429`

[Change history](https://skmtc.dev/influencers/apis/core-api-concepts/changes/public/v1/creators/content/posts/post.md)

---

[API](https://skmtc.dev/influencers/apis/core-api-concepts.md) · [All operations](https://skmtc.dev/influencers/apis/core-api-concepts/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/influencers/core-api-concepts/revisions/87e654ac822e/schema)
