Post

A post or repost, as profiles.posts and profiles.activity return it. posts.enrich returns this same record by URL or bare urn, with comments included.

Returned byprofiles.postsprofiles.activityposts.enrichProfileActivity.posts

Fields #

FieldTypeNotes
urnstringThe activity's numeric id, with the urn:li:activity: prefix stripped. This is the id, not the full urn - reconstruct it yourself as urn:li:activity:<id> if you need the prefixed form.
share_urnstringThe full prefixed urn (urn:li:share:...), unlike urn beside it. LinkedIn returns it that way, and the prefix is what distinguishes a share from an activity - the two fields carry the same id in different conventions on purpose.
urlstring
authorPostAuthor
textstring
posted_atstring (RFC 3339)Decoded from the activity id, which encodes a Unix millisecond timestamp in its top bits. The feed carries no timestamp field of its own. Absent when the date could not be decoded, rather than present and wrong.
content_typestringOne of text, image, video, document, article. Derived from which media component the payload populated, not a field LinkedIn sends.
mediaPostMedia[]
articlePostArticle
mentionsPostMention[]
hashtagsstring[]
reaction_countinteger
comment_countinteger
repost_countinteger
reactions_by_typeReactionCount[]The breakdown behind reaction_count.
is_repostbooleanA repost with commentary nests the original; a plain repost does not, and the only marker is the header line LinkedIn renders. Both set this flag.
reposted_postActivityTargetPost
commentsPostComment[]The top comments. Returned only by posts/enrich - profiles/posts returns posts without them, because a feed page carries no comment bodies.
scraped_atstring (RFC 3339)When this record was taken. On every record, because "never cached" is only a credible claim if the record says when it was fetched.

Absent is not null: a field we did not get is omitted rather than sent as an empty string, so you can tell "LinkedIn does not have this" from "this person left it blank".

Sample #

JSON
{
  "urn": "7000000000000000000",
  "share_urn": "urn:li:share:7000000000000000000",
  "url": "https://www.linkedin.com/feed/update/urn:li:activity:7000000000000000000/",
  "author": {
    "name": "Satya Nadella",
    "url": "https://www.linkedin.com/in/satyanadella",
    "headline": "Chairman and CEO at Microsoft",
    "avatar_url": "https://media.licdn.com/dms/image/..."
  },
  "text": "Congratulations to the team on today's launch.",
  "posted_at": "2026-08-28T09:11:00Z",
  "content_type": "image",
  "media": [ { "...": "PostMedia" } ],
  "mentions": [ { "...": "PostMention" } ],
  "hashtags": ["AI", "Copilot"],
  "reaction_count": 412,
  "comment_count": 38,
  "repost_count": 12,
  "reactions_by_type": [
    { "type": "PRAISE", "count": 210 },
    { "type": "LIKE", "count": 160 }
  ],
  "is_repost": false,
  "comments": [ { "...": "PostComment" }, { "...": "PostComment" } ],
  "scraped_at": "2026-09-01T10:00:04Z"
}