Search LinkedIn posts

Search public LinkedIn posts.

Recommended client timeout: 90 seconds. Most requests resolve in 2-5 seconds, but set your HTTP client timeout to at least 90 seconds to avoid false timeouts on slower queries.

Credits

Each successful response deducts 4 credits from your organization. Requests that fail (4xx / 5xx) are not billed.

See the credits documentation for the full rate table.


POST
/data/linkedin/posts/search

Authorization

bearerAuth
AuthorizationBearer <token>

Organization API key from Integrations → API keys.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request body for POST /data/linkedin/posts/search.

query*string

Keywords / search terms (text you would put in the LinkedIn search bar).

Length1 <= length <= 200
page?integer

Page number (1-based).

Range1 <= value
Default1
sort_by?string

Sort order for this page. Mapped upstream to relevance (top match) or date_posted (latest).

Default"recent"

Value in

  • "recent"
  • "relevant"
count?integer

Maximum posts to return from this response (capped at 20).

Range1 <= value <= 20
Default20
author_job_title?string

Rough text matching the author's job title (e.g. CEO). Maps to upstream author_job_title.

Lengthlength <= 80
content_type?string

Require posts to include this content type. Maps to upstream content_type.

Value in

  • "photos"
  • "videos"
  • "liveVideos"
  • "collaborativeArticles"
  • "documents"
from_member?string

Person URNs who authored the post, comma-separated. Maps to upstream from_member.

Lengthlength <= 120
from_organization?string

Organization ids that posted the post, comma-separated. Maps to upstream from_organization.

Lengthlength <= 120
author_company?string

Company ids where the author works, comma-separated. Maps to upstream author_company.

Lengthlength <= 120
author_industry?array<integer>

Numeric industry IDs to filter by author industry (max 5). Use GET /data/linkedin/industries to find valid IDs.

Itemsitems <= 5
mentions_member?string

Person URNs mentioned in the post, comma-separated. Maps to upstream mentions_member.

Lengthlength <= 120
mentions_organization?string

Organization ids mentioned in the post, comma-separated. Maps to upstream mentions_organization.

Lengthlength <= 120

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/data/linkedin/posts/search" \  -H "Content-Type: application/json" \  -d '{    "query": "string"  }'
{  "requestId": "string",  "posts": [    {      "share_url": "string",      "actor": {        "actor_image": "string",        "actor_description": "string",        "actor_name": "string",        "actor_subDescription": "string",        "actor_navigationContext": "string"      },      "commentary": "string",      "social_details": {        "numLikes": 0,        "numComments": 0,        "numShares": 0,        "reactionTypeCounts": [          {            "type": "string",            "count": 0          }        ]      },      "postedAt": "string",      "imageComponent": [        "string"      ],      "urn": "string",      "reactionsUrn": "string",      "commentsUrn": "string",      "repostsUrn": "string",      "articleComponent": {        "title": "string",        "subtitle": "string",        "navigationContext": "string",        "smallImage": "string",        "description": "string"      },      "linkedInVideoComponent": {        "thumbnail": "string",        "duration": 0,        "provider": "string"      },      "documentComponent": {        "title": "string",        "transcribedDocumentUrl": "string",        "coverPages": [          {            "width": 0,            "height": 0,            "imageUrls": [              "string"            ]          }        ]      },      "pollComponent": {        "question": "string",        "visibilityInfo": "string",        "showPollSummaryInfo": true,        "pollOptions": [          {            "option": "string",            "votes": 0          }        ],        "totalVotes": 0,        "closed": true,        "remainingDuration": "string"      }    }  ],  "meta": {    "returnedCount": 0,    "page": 1  }}
{  "requestId": "01HXYZABCDEF",  "error": {    "code": "validation_error",    "message": "query: String must contain at least 1 character(s)",    "issues": [      {        "path": "query",        "message": "String must contain at least 1 character(s)"      }    ]  }}
{  "requestId": "01HXYZABCDEF",  "error": {    "code": "unauthorized",    "message": "Invalid or revoked API key."  }}
{  "requestId": "01HXYZABCDEF",  "error": {    "code": "rate_limited",    "message": "Rate limit exceeded for linkedin. Try again later.",    "retryAfter": 42  }}
{  "requestId": "01HXYZABCDEF",  "error": {    "code": "upstream_error",    "message": "LinkedIn search could not be completed. You won't be charged for this request."  }}
{  "requestId": "ce8f36c6-c9e6-4ab1-93b3-d11bbbe886aa",  "error": {    "code": "linkedin_unavailable",    "message": "LinkedIn search is temporarily unavailable. Retry later. You won't be charged for this request."  }}