---
title: "List posts for the feed (with daily recap)"
method: GET
path: "/v2/posts"
tags: ["posts"]
---

# List posts for the feed (with daily recap)

`GET /v2/posts`

## Query parameters

- `limit` integer
- `cursor` string
- `filter` 'all' | 'following' | 'clan'
- `userId` string, uuid
- `fetchDirection` 'older' | 'newer'
- `anchor` string, uuid

## Response `200`

Successful response

- ListPostsV2Output
  - `total` integer
  - `nextCursor` string
  - `previousCursor` string
  - `hasMore` boolean, required
  - `posts` union[], required
    - union
      - object
        - `kind` 'feed_post', required
        - `id` string, uuid, required
        - `user_id` string, uuid, required
        - `type` 'chart_note' | 'standalone' | 'position_opened' | 'position_closed' | 'position_added' | 'position_reduced' | 'position_flipped' | 'copy_trade' | 'recap', required
        - `content` string, nullable, required
        - `chart_symbol` string, nullable, required
        - `chart_timestamp` string, nullable, required
        - `position_id` string, uuid, nullable, required
        - `order_id` string, nullable, required
        - `network` string, nullable, required
        - `clan_id` string, uuid, nullable, required
        - `clan` PostClan, required
          - `id` string, uuid, required
          - `name` string, required
          - `description` string, nullable, required
          - `image_url` string, nullable, required
          - `banner_url` string, nullable, required
          - `chat_room_id` string, uuid, nullable, required
          - `created_at` string, required
          - `updated_at` string, required
        - `like_count` integer, required
        - `comment_count` integer, required
        - `chat_room_id` string, uuid, nullable, required
        - `created_at` string, required
        - `updated_at` string, required
        - `copied_user_id` string, uuid, nullable, required
        - `copiedUser` FeedUser, required
          - `id` string, required
          - `username` string, required
          - `display_name` string, required
          - `avatar_url` string, required
          - `rank` integer, nullable, required
          - `clan_id` string, nullable, required
          - `clan` UserClan, nullable
            - `id` string, required
            - `name` string, required
            - `description` string, nullable, required
            - `image_url` string, nullable, required
            - `banner_url` string, nullable, required
            - `chat_room_id` string, nullable, required
            - `created_at` string, required
            - `updated_at` string, required
          - `account_value_tier` integer, required
          - `is_official` boolean, required
          - `wallet_address` string, nullable, required
        - `copied_count` integer, required
        - `copiers` FeedUser[], required
          - `id` string, required
          - `username` string, required
          - `display_name` string, required
          - `avatar_url` string, required
          - `rank` integer, nullable, required
          - `clan_id` string, nullable, required
          - `clan` UserClan, nullable
            - `id` string, required
            - `name` string, required
            - `description` string, nullable, required
            - `image_url` string, nullable, required
            - `banner_url` string, nullable, required
            - `chat_room_id` string, nullable, required
            - `created_at` string, required
            - `updated_at` string, required
          - `account_value_tier` integer, required
          - `is_official` boolean, required
          - `wallet_address` string, nullable, required
        - `user` FeedUser, required
          - `id` string, required
          - `username` string, required
          - `display_name` string, required
          - `avatar_url` string, required
          - `rank` integer, nullable, required
          - `clan_id` string, nullable, required
          - `clan` UserClan, nullable
            - `id` string, required
            - `name` string, required
            - `description` string, nullable, required
            - `image_url` string, nullable, required
            - `banner_url` string, nullable, required
            - `chat_room_id` string, nullable, required
            - `created_at` string, required
            - `updated_at` string, required
          - `account_value_tier` integer, required
          - `is_official` boolean, required
          - `wallet_address` string, nullable, required
        - `attachments` PostAttachment[], required
          - `id` string, uuid, required
          - `type` 'image' | 'video' | 'file' | 'audio' | 'gif' | 'sticker', required
          - `url` string, nullable, required
          - `external_url` string, nullable, required
          - `filename` string, required
          - `mime_type` string, required
          - `width` integer, nullable, required
          - `height` integer, nullable, required
          - `blur_hash` string, nullable, required
          - `duration` number, nullable, required
          - `thumbnail_url` string, nullable, required
        - `is_liked` boolean, required
        - `tradingMetadata` TradingMetadata
          - `id` string, uuid, required
          - `symbol` string, required
          - `side` 'LONG' | 'SHORT', required
          - `entry_price` number, required
          - `size` number, required
          - `leverage_type` string, required
          - `leverage_value` integer, required
          - `realized_pnl` number, required
          - `unrealized_pnl` number, required
          - `isOpen` boolean, required
          - `opened_at` string, required
          - `closed_at` string, nullable, required
          - `closed_price` number, nullable, required
          - `pnlSparkline` SparklinePoint[], required
            - `t` number, required
            - `v` number, required
        - `mentioned_users` FeedMentionedUser[], required
          - `id` string, required
          - `username` string, required
          - `display_name` string, required
          - `avatar_url` string, required
        - `mentioned_symbols` string[]
        - `link_preview` LinkPreview
          - `url` string, required
          - `title` string, nullable, required
          - `description` string, nullable, required
          - `image` string, nullable, required
          - `imageWidth` integer, nullable, required
          - `imageHeight` integer, nullable, required
          - `siteName` string, nullable, required
          - `favicon` string, nullable, required
        - `recap_content` RecapContent
          - `date` string, required
          - `summary` string, required
          - `sections` RecapSection[], required
            - `label` string, nullable
            - `body` string, required
          - `citations` RecapCitation[]
            - `index` integer, required
            - `url` string, required
            - `title` string, required
        - `quoted_post` FeedBasePost
          - `id` string, uuid, required
          - `user_id` string, uuid, required
          - `type` 'chart_note' | 'standalone' | 'position_opened' | 'position_closed' | 'position_added' | 'position_reduced' | 'position_flipped' | 'copy_trade' | 'recap', required
          - `content` string, nullable, required
          - `chart_symbol` string, nullable, required
          - `chart_timestamp` string, nullable, required
          - `position_id` string, uuid, nullable, required
          - `order_id` string, nullable, required
          - `network` string, nullable, required
          - `clan_id` string, uuid, nullable, required
          - `clan` PostClan, required
            - `id` string, uuid, required
            - `name` string, required
            - `description` string, nullable, required
            - `image_url` string, nullable, required
            - `banner_url` string, nullable, required
            - `chat_room_id` string, uuid, nullable, required
            - `created_at` string, required
            - `updated_at` string, required
          - `like_count` integer, required
          - `comment_count` integer, required
          - `chat_room_id` string, uuid, nullable, required
          - `created_at` string, required
          - `updated_at` string, required
          - `copied_user_id` string, uuid, nullable, required
          - `copiedUser` FeedUser, required
            - `id` string, required
            - `username` string, required
            - `display_name` string, required
            - `avatar_url` string, required
            - `rank` integer, nullable, required
            - `clan_id` string, nullable, required
            - `clan` UserClan, nullable
              - …
            - `account_value_tier` integer, required
            - `is_official` boolean, required
            - `wallet_address` string, nullable, required
          - `copied_count` integer, required
          - `copiers` FeedUser[], required
            - `id` string, required
            - `username` string, required
            - `display_name` string, required
            - `avatar_url` string, required
            - `rank` integer, nullable, required
            - `clan_id` string, nullable, required
            - `clan` UserClan, nullable
              - …
            - `account_value_tier` integer, required
            - `is_official` boolean, required
            - `wallet_address` string, nullable, required
          - `user` FeedUser, required
            - `id` string, required
            - `username` string, required
            - `display_name` string, required
            - `avatar_url` string, required
            - `rank` integer, nullable, required
            - `clan_id` string, nullable, required
            - `clan` UserClan, nullable
              - …
            - `account_value_tier` integer, required
            - `is_official` boolean, required
            - `wallet_address` string, nullable, required
          - `attachments` PostAttachment[], required
            - `id` string, uuid, required
            - `type` 'image' | 'video' | 'file' | 'audio' | 'gif' | 'sticker', required
            - `url` string, nullable, required
            - `external_url` string, nullable, required
            - `filename` string, required
            - `mime_type` string, required
            - `width` integer, nullable, required
            - `height` integer, nullable, required
            - `blur_hash` string, nullable, required
            - `duration` number, nullable, required
            - `thumbnail_url` string, nullable, required
          - `is_liked` boolean, required
          - `tradingMetadata` TradingMetadata
            - `id` string, uuid, required
            - `symbol` string, required
            - `side` 'LONG' | 'SHORT', required
            - `entry_price` number, required
            - `size` number, required
            - `leverage_type` string, required
            - `leverage_value` integer, required
            - `realized_pnl` number, required
            - `unrealized_pnl` number, required
            - `isOpen` boolean, required
            - `opened_at` string, required
            - `closed_at` string, nullable, required
            - `closed_price` number, nullable, required
            - `pnlSparkline` SparklinePoint[], required
              - …
          - `mentioned_users` FeedMentionedUser[], required
            - `id` string, required
            - `username` string, required
            - `display_name` string, required
            - `avatar_url` string, required
          - `mentioned_symbols` string[]
          - `link_preview` LinkPreview
            - `url` string, required
            - `title` string, nullable, required
            - `description` string, nullable, required
            - `image` string, nullable, required
            - `imageWidth` integer, nullable, required
            - `imageHeight` integer, nullable, required
            - `siteName` string, nullable, required
            - `favicon` string, nullable, required
          - `recap_content` RecapContent
            - `date` string, required
            - `summary` string, required
            - `sections` RecapSection[], required
              - …
            - `citations` RecapCitation[]
              - …
      - object
        - `kind` 'daily_recap', required
        - `id` string, uuid, required
        - `author` PublicUser, required
          - `id` string, required
          - `telegram_id` string, nullable, required
          - `username` string, required
          - `display_name` string, required
          - `referral_code` string, nullable, required
          - `referral_code_alt` string, nullable, required
          - `referred_by_id` string, nullable, required
          - `wallet_address` string, nullable, required
          - `created_at` string, required
          - `updated_at` string, required
          - `x_username` string, nullable, required
          - `last_online` string, nullable, required
          - `last_online_mobile` string, nullable, required
          - `avatar_url` string, required
          - `bio` string, nullable, required
          - `clan_id` string, nullable, required
          - `clan` UserClan, nullable
            - `id` string, required
            - `name` string, required
            - `description` string, nullable, required
            - `image_url` string, nullable, required
            - `banner_url` string, nullable, required
            - `chat_room_id` string, nullable, required
            - `created_at` string, required
            - `updated_at` string, required
          - `rank` integer, nullable, required
          - `rank_testnet` integer, nullable, required
          - `streak` integer, nullable, required
          - `elo` integer, nullable, required
          - `is_npc` boolean, required
          - `last_reset_at` string, nullable, required
          - `feature_image` string, required
          - `completed_onboarding` boolean, required
          - `dismissed_trade_note_cta` boolean, required
          - `has_deposited` boolean, required
          - `invite_code_id` string, nullable, required
          - `main_signer_quorum_id` string, nullable, required
          - `builder_fee_override` integer, nullable, required
          - `fee_rebate_rate` number, nullable, required
          - `deleted_at` string, nullable, required
          - `network_mode` 'hyperliquid_testnet' | 'hyperliquid_mainnet' | 'hyperliquid_paper', required
          - `restrict_dms_to_following` boolean, required
          - `pnl_share_enabled` boolean, required
          - `pnl_share_rate` number, required
          - `acknowledged_season_zero` boolean, required
          - `notification_preferences` unknown, required
          - `fat_finger_settings` unknown, required
          - `account_value_tier` integer, required
          - `is_official` boolean, required
          - `trader_level_seen` integer, nullable, required
          - `max_market_order_slippage` number, nullable, required
          - `wallets` Wallet[]
            - `id` string, required
            - `user_id` string, required
            - `address` string, required
            - `type` 'primary' | 'arena' | 'copy_trading', required
            - `privy_wallet_id` string, required
            - `signer_quorum_id` string, nullable, required
            - `hl_setup_complete` boolean, required
            - `created_at` string, required
            - `updated_at` string, required
        - `content` string, nullable, required
        - `mentioned_users` PublicUser[], required
          - `id` string, required
          - `telegram_id` string, nullable, required
          - `username` string, required
          - `display_name` string, required
          - `referral_code` string, nullable, required
          - `referral_code_alt` string, nullable, required
          - `referred_by_id` string, nullable, required
          - `wallet_address` string, nullable, required
          - `created_at` string, required
          - `updated_at` string, required
          - `x_username` string, nullable, required
          - `last_online` string, nullable, required
          - `last_online_mobile` string, nullable, required
          - `avatar_url` string, required
          - `bio` string, nullable, required
          - `clan_id` string, nullable, required
          - `clan` UserClan, nullable
            - `id` string, required
            - `name` string, required
            - `description` string, nullable, required
            - `image_url` string, nullable, required
            - `banner_url` string, nullable, required
            - `chat_room_id` string, nullable, required
            - `created_at` string, required
            - `updated_at` string, required
          - `rank` integer, nullable, required
          - `rank_testnet` integer, nullable, required
          - `streak` integer, nullable, required
          - `elo` integer, nullable, required
          - `is_npc` boolean, required
          - `last_reset_at` string, nullable, required
          - `feature_image` string, required
          - `completed_onboarding` boolean, required
          - `dismissed_trade_note_cta` boolean, required
          - `has_deposited` boolean, required
          - `invite_code_id` string, nullable, required
          - `main_signer_quorum_id` string, nullable, required
          - `builder_fee_override` integer, nullable, required
          - `fee_rebate_rate` number, nullable, required
          - `deleted_at` string, nullable, required
          - `network_mode` 'hyperliquid_testnet' | 'hyperliquid_mainnet' | 'hyperliquid_paper', required
          - `restrict_dms_to_following` boolean, required
          - `pnl_share_enabled` boolean, required
          - `pnl_share_rate` number, required
          - `acknowledged_season_zero` boolean, required
          - `notification_preferences` unknown, required
          - `fat_finger_settings` unknown, required
          - `account_value_tier` integer, required
          - `is_official` boolean, required
          - `trader_level_seen` integer, nullable, required
          - `max_market_order_slippage` number, nullable, required
          - `wallets` Wallet[]
            - `id` string, required
            - `user_id` string, required
            - `address` string, required
            - `type` 'primary' | 'arena' | 'copy_trading', required
            - `privy_wallet_id` string, required
            - `signer_quorum_id` string, nullable, required
            - `hl_setup_complete` boolean, required
            - `created_at` string, required
            - `updated_at` string, required
        - `mentioned_symbols` string[]
        - `created_at` string, required
        - `updated_at` string, required
        - `like_count` integer, required
        - `comment_count` integer, required
        - `is_liked` boolean, required
        - `chat_room_id` string, uuid, nullable, required

## Other responses

- `400` — Invalid input data
- `404` — Resource not found
- `500` — Internal server error

---

[API](https://skmtc.net/legend/apis/legend-api.md) · [All operations](https://skmtc.net/legend/apis/legend-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/legend/legend-api/versions/34b8f4885f8a/schema)
