Apinoa Docs

Posts

List a LinkedIn member's or company's recent posts.

View raw .mdx
GET | POST /v1/linkedin/posts

Send parameters as a query string with GET, or as a JSON body with POST. Both are equivalent.

What to Pass

PassReadsNotes
usernameA member's recent posts
companyA company's recent posts

Pass one source per call. Every identifier also takes the page URL.

Parameters

ParameterTypeRequiredNotes
companystringCompany vanity name (with or without company/, e.g. microsoft), or the company URL.
limitinteger 1–50Most posts to return (LinkedIn shows the most recent few).
usernamestringPerson vanity handle (with or without in/, e.g. williamhgates), or the profile URL.

Request

curl "https://gateway.apinoa.com/v1/linkedin/posts?company=microsoft&limit=3" \
  -H "x-api-key: $APINOA_API_KEY"

Response

Returns Page of Post in data. A real response, shortened: arrays keep their first entries and long text is cut.

{
  "success": true,
  "data": {
    "platform": "linkedin",
    "items": [
      {
        "platform": "linkedin",
        "id": "7519053939393224704",
        "url": "https://www.linkedin.com/feed/update/urn:li:activity:7519053939393224704/",
        "author": {
          "platform": "linkedin",
          "handle": "microsoft",
          "displayName": "Microsoft",
          "url": "https://www.linkedin.com/company/microsoft",
          "ext": {
            "type": "organization"
          }
        },
        "createdAt": "2026-10-22T15:15:56.418Z",
        "media": [],
        "repostOf": {
          "platform": "linkedin",
          "id": "urn:li:ugcPost:7518982647881048064",
          "url": "https://www.linkedin.com/feed/update/urn:li:ugcPost:7518982647881048064/",
          "author": {
            "platform": "linkedin",
            "handle": "satyanadella",
            "displayName": "Satya Nadella",
            "url": "https://www.linkedin.com/in/satyanadella",
            "avatarUrl": "https://media.licdn.com/dms/image/v2/C5603AQHHUuOSlRVA1w/profile-displayphoto-shrink_400_400/profile-displayphoto-shrin…",
            "ext": {
              "type": "person",
              "headline": "Chairman and CEO at Microsoft"
            }
          },
          "text": "Keeping over a million elevators and escalators running smoothly is no small task.\n\nToday in Cologne, I heard about how…",
          "media": [
            {
              "type": "video",
              "url": "https://dms.licdn.com/playlist/vid/v2/D5605AQGAHHJsMz2u9g/mp4-720p-30fp-crf28/B56aFjK4XmKoB4-/0/1792665181541?e=2147483…",
              "thumbnailUrl": "https://media.licdn.com/dms/image/v2/D5605AQGAHHJsMz2u9g/videocover-high/B56aFjK4XmKoBI-/0/1792665171774?e=2147483647&v…",
              "variants": [
                {
                  "url": "https://dms.licdn.com/playlist/vid/v2/D5605AQGAHHJsMz2u9g/mp4-640p-30fp-crf28/B56aFjK4XmKoBg-/0/1792665181541?e=2147483…",
                  "bitrate": 376115,
                  "contentType": "video/mp4"
                },
                {
                  "url": "https://dms.licdn.com/playlist/vid/v2/D5605AQGAHHJsMz2u9g/mp4-720p-30fp-crf28/B56aFjK4XmKoB4-/0/1792665181541?e=2147483…",
                  "bitrate": 494998,
                  "contentType": "video/mp4"
                }
              ],
              "ext": {
                "captionsUrl": "https://dms.licdn.com/playlist/vid/v2/D5605AQGAHHJsMz2u9g/video-auto-caption-webvtt-acs-singleton/B56aFjK4XmKoEA-/0/179…"
              }
            }
          ],
          "metrics": {
            "likes": 7819,
            "comments": 300
          },
          "entities": {
            "mentions": [
              {
                "handle": "tke-global",
                "displayName": "TK Elevator"
              }
            ],
            "urls": [
              {
                "url": "https://lnkd.in/gEjFzJWC"
              }
            ]
          },
          "ext": {
            "mentions": [
              {
                "handle": "tke-global",
                "url": "https://de.linkedin.com/company/tke-global",
                "type": "organization"
              }
            ]
          }
        }
      }
    ]
  }
}

Errors

StatusCodeMeaning
400INVALID_CURSORThe cursor is not one this operation returned. Start again without it.
400INVALID_PARAMSA parameter is missing, unknown or out of range. The message names it.
401UNAUTHORIZEDThe x-api-key header is missing, or the key is revoked or unknown.
402INSUFFICIENT_BALANCEThe balance does not cover this call. Top up in the dashboard.
404NOT_FOUNDThe account, post or group does not exist, or is private, deleted or age-restricted.
429MARKETPLACE_SATURATEDToo many concurrent calls. Retry after the Retry-After seconds.
502UPSTREAM_ERRORThe platform answered with something unusable. Retry with backoff.

Every code is listed in Errors. Failed calls are not billed.

Pricing

Price $0.001 per call. List price; the rate steps down above 1,000 calls a day.

Notes

  • LinkedIn shows logged-out visitors the most recent few posts; there is no deeper paging. limit caps how many come back.

On this page