Posts
List a LinkedIn member's or company's recent posts.
GET | POST /v1/linkedin/postsSend parameters as a query string with GET, or as a JSON body with POST. Both are equivalent.
What to Pass
| Pass | Reads | Notes |
|---|---|---|
username | A member's recent posts | |
company | A company's recent posts |
Pass one source per call. Every identifier also takes the page URL.
Parameters
| Parameter | Type | Required | Notes |
|---|---|---|---|
company | string | Company vanity name (with or without company/, e.g. microsoft), or the company URL. | |
limit | integer 1–50 | Most posts to return (LinkedIn shows the most recent few). | |
username | string | Person 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
| Status | Code | Meaning |
|---|---|---|
| 400 | INVALID_CURSOR | The cursor is not one this operation returned. Start again without it. |
| 400 | INVALID_PARAMS | A parameter is missing, unknown or out of range. The message names it. |
| 401 | UNAUTHORIZED | The x-api-key header is missing, or the key is revoked or unknown. |
| 402 | INSUFFICIENT_BALANCE | The balance does not cover this call. Top up in the dashboard. |
| 404 | NOT_FOUND | The account, post or group does not exist, or is private, deleted or age-restricted. |
| 429 | MARKETPLACE_SATURATED | Too many concurrent calls. Retry after the Retry-After seconds. |
| 502 | UPSTREAM_ERROR | The 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.
limitcaps how many come back.