Read-only

List LinkedIn Posts

List LinkedIn posts in two modes: recent posts in chronological order for a given profile or company, or your own top posts ranked by a chosen engagement metric. Recent mode requires an identifier (provider ID, slug, or URL), while top mode ranks your posts by impressions, reactions, comments, reposts, or engagement rate over a lookback window. Returns an empty array when no posts are found.

list_postsGET/api/v1/content/posts
crispy — bash

Example prompt: Show me my top 5 posts by engagement rate from the last 30 days

[
  {
    "post_id": "urn:li:activity:7012345678901234567",
    "text": "The biggest GTM mistake I see...",
    "engagement_rate": 0.072,
    "impressions": 14820
  }
]
Permission scope
core
Access
Read-only
Category
Content

What you can build

Review a prospect's recent posts to find relevant conversation starters
Surface your top-performing posts by impressions or engagement rate
Audit a company page's recent content cadence and themes
Identify which past posts to repurpose based on engagement

Parameters

Inputs accepted by list_posts.

NameTypeDescription
identifierstringWhose posts to list. Accepts provider_id (e.g. 'ACoAABGDkeIB...'), slug (e.g. 'john-doe-123'), or full URL. Required for sort='recent'.
sort"recent" | "top"Sort order: 'recent' (default, chronological by identifier) or 'top' (your top posts by engagement score).
limitnumberMax number of posts to return (1-100 for recent, 1-25 for top; default 20/10)
metric"impressions" | "reactions" | "comments" | "reposts" | "engagement_rate"Rank by this metric when sort='top' (default: impressions)
daysnumberLook back this many days when sort='top' (default 30)
is_companybooleanSet to true if the identifier is a company (sort='recent' only)
cursorstringPagination cursor (sort='recent' only)

The complete LinkedIn API. Ready when you are.

Connect your first LinkedIn profile in under 5 minutes. Every tool, every seat, no feature gates. Safe limits, warm-up, and full permission control built in.