Search Posts
curl --request POST \
--url https://api.linkupapi.com/v2/content \
--header 'Content-Type: application/json' \
--header 'x-api-key: <x-api-key>' \
--data '
{
"account_id": "<string>",
"action": "<string>",
"params": {
"keyword": "<string>",
"count": 123,
"offset": 123,
"post_type": "<string>",
"sort_by": "<string>",
"post_date": "<string>",
"profile_url": "<string>",
"company_url": "<string>",
"author_company": "<string>",
"author_industry": "<string>",
"author_job_title": "<string>",
"mentions_member": "<string>",
"mentions_organization": "<string>",
"posted_by": "<string>"
}
}
'import requests
url = "https://api.linkupapi.com/v2/content"
payload = {
"account_id": "<string>",
"action": "<string>",
"params": {
"keyword": "<string>",
"count": 123,
"offset": 123,
"post_type": "<string>",
"sort_by": "<string>",
"post_date": "<string>",
"profile_url": "<string>",
"company_url": "<string>",
"author_company": "<string>",
"author_industry": "<string>",
"author_job_title": "<string>",
"mentions_member": "<string>",
"mentions_organization": "<string>",
"posted_by": "<string>"
}
}
headers = {
"x-api-key": "<x-api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<x-api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
account_id: '<string>',
action: '<string>',
params: {
keyword: '<string>',
count: 123,
offset: 123,
post_type: '<string>',
sort_by: '<string>',
post_date: '<string>',
profile_url: '<string>',
company_url: '<string>',
author_company: '<string>',
author_industry: '<string>',
author_job_title: '<string>',
mentions_member: '<string>',
mentions_organization: '<string>',
posted_by: '<string>'
}
})
};
fetch('https://api.linkupapi.com/v2/content', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.linkupapi.com/v2/content",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'account_id' => '<string>',
'action' => '<string>',
'params' => [
'keyword' => '<string>',
'count' => 123,
'offset' => 123,
'post_type' => '<string>',
'sort_by' => '<string>',
'post_date' => '<string>',
'profile_url' => '<string>',
'company_url' => '<string>',
'author_company' => '<string>',
'author_industry' => '<string>',
'author_job_title' => '<string>',
'mentions_member' => '<string>',
'mentions_organization' => '<string>',
'posted_by' => '<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <x-api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.linkupapi.com/v2/content"
payload := strings.NewReader("{\n \"account_id\": \"<string>\",\n \"action\": \"<string>\",\n \"params\": {\n \"keyword\": \"<string>\",\n \"count\": 123,\n \"offset\": 123,\n \"post_type\": \"<string>\",\n \"sort_by\": \"<string>\",\n \"post_date\": \"<string>\",\n \"profile_url\": \"<string>\",\n \"company_url\": \"<string>\",\n \"author_company\": \"<string>\",\n \"author_industry\": \"<string>\",\n \"author_job_title\": \"<string>\",\n \"mentions_member\": \"<string>\",\n \"mentions_organization\": \"<string>\",\n \"posted_by\": \"<string>\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<x-api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.linkupapi.com/v2/content")
.header("x-api-key", "<x-api-key>")
.header("Content-Type", "application/json")
.body("{\n \"account_id\": \"<string>\",\n \"action\": \"<string>\",\n \"params\": {\n \"keyword\": \"<string>\",\n \"count\": 123,\n \"offset\": 123,\n \"post_type\": \"<string>\",\n \"sort_by\": \"<string>\",\n \"post_date\": \"<string>\",\n \"profile_url\": \"<string>\",\n \"company_url\": \"<string>\",\n \"author_company\": \"<string>\",\n \"author_industry\": \"<string>\",\n \"author_job_title\": \"<string>\",\n \"mentions_member\": \"<string>\",\n \"mentions_organization\": \"<string>\",\n \"posted_by\": \"<string>\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.linkupapi.com/v2/content")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<x-api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"account_id\": \"<string>\",\n \"action\": \"<string>\",\n \"params\": {\n \"keyword\": \"<string>\",\n \"count\": 123,\n \"offset\": 123,\n \"post_type\": \"<string>\",\n \"sort_by\": \"<string>\",\n \"post_date\": \"<string>\",\n \"profile_url\": \"<string>\",\n \"company_url\": \"<string>\",\n \"author_company\": \"<string>\",\n \"author_industry\": \"<string>\",\n \"author_job_title\": \"<string>\",\n \"mentions_member\": \"<string>\",\n \"mentions_organization\": \"<string>\",\n \"posted_by\": \"<string>\"\n }\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"posts": [
{
"backend_urn": "urn:li:activity:7454082992819519488",
"shareUrl": "https://www.linkedin.com/posts/jane-doe-42_post-activity-7454082992819519488-lXYU",
"text": "Exciting developments in artificial intelligence this week...",
"numLikes": 234,
"numComments": 45,
"numShares": 12,
"actor_name": "Jane Doe",
"actor_description": "AI Researcher at Acme Corp",
"actor_image": "https://media.licdn.com/dms/image/v2/.../profile.jpg",
"actor_profile_url": "https://www.linkedin.com/in/jane-doe-42",
"created_time": 1777191911,
"post_images": [],
"shareAudience": "PUBLIC"
}
],
"total_results": 1,
"total_available_results": 1240,
"pagination": {
"offset": 0,
"count": 1,
"next_offset": 1,
"has_more": true,
"results_per_page": 50,
"pages_fetched": 1
}
},
"metadata": {
"action": "search",
"account_id": "your-account-id",
"credits_consumed": 1,
"timestamp": "2026-04-26T10:35:00Z"
}
}
{
"success": false,
"error": {
"code": "INVALID_PARAMS",
"message": "At least one search filter is required."
},
"metadata": {
"action": "search",
"account_id": "your-account-id",
"credits_consumed": 0,
"timestamp": "2026-04-26T10:35:00Z"
}
}
Content
Search Posts
Search for posts using keywords and advanced filters.
POST
/
v2
/
content
Search Posts
curl --request POST \
--url https://api.linkupapi.com/v2/content \
--header 'Content-Type: application/json' \
--header 'x-api-key: <x-api-key>' \
--data '
{
"account_id": "<string>",
"action": "<string>",
"params": {
"keyword": "<string>",
"count": 123,
"offset": 123,
"post_type": "<string>",
"sort_by": "<string>",
"post_date": "<string>",
"profile_url": "<string>",
"company_url": "<string>",
"author_company": "<string>",
"author_industry": "<string>",
"author_job_title": "<string>",
"mentions_member": "<string>",
"mentions_organization": "<string>",
"posted_by": "<string>"
}
}
'import requests
url = "https://api.linkupapi.com/v2/content"
payload = {
"account_id": "<string>",
"action": "<string>",
"params": {
"keyword": "<string>",
"count": 123,
"offset": 123,
"post_type": "<string>",
"sort_by": "<string>",
"post_date": "<string>",
"profile_url": "<string>",
"company_url": "<string>",
"author_company": "<string>",
"author_industry": "<string>",
"author_job_title": "<string>",
"mentions_member": "<string>",
"mentions_organization": "<string>",
"posted_by": "<string>"
}
}
headers = {
"x-api-key": "<x-api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<x-api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
account_id: '<string>',
action: '<string>',
params: {
keyword: '<string>',
count: 123,
offset: 123,
post_type: '<string>',
sort_by: '<string>',
post_date: '<string>',
profile_url: '<string>',
company_url: '<string>',
author_company: '<string>',
author_industry: '<string>',
author_job_title: '<string>',
mentions_member: '<string>',
mentions_organization: '<string>',
posted_by: '<string>'
}
})
};
fetch('https://api.linkupapi.com/v2/content', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.linkupapi.com/v2/content",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'account_id' => '<string>',
'action' => '<string>',
'params' => [
'keyword' => '<string>',
'count' => 123,
'offset' => 123,
'post_type' => '<string>',
'sort_by' => '<string>',
'post_date' => '<string>',
'profile_url' => '<string>',
'company_url' => '<string>',
'author_company' => '<string>',
'author_industry' => '<string>',
'author_job_title' => '<string>',
'mentions_member' => '<string>',
'mentions_organization' => '<string>',
'posted_by' => '<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <x-api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.linkupapi.com/v2/content"
payload := strings.NewReader("{\n \"account_id\": \"<string>\",\n \"action\": \"<string>\",\n \"params\": {\n \"keyword\": \"<string>\",\n \"count\": 123,\n \"offset\": 123,\n \"post_type\": \"<string>\",\n \"sort_by\": \"<string>\",\n \"post_date\": \"<string>\",\n \"profile_url\": \"<string>\",\n \"company_url\": \"<string>\",\n \"author_company\": \"<string>\",\n \"author_industry\": \"<string>\",\n \"author_job_title\": \"<string>\",\n \"mentions_member\": \"<string>\",\n \"mentions_organization\": \"<string>\",\n \"posted_by\": \"<string>\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<x-api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.linkupapi.com/v2/content")
.header("x-api-key", "<x-api-key>")
.header("Content-Type", "application/json")
.body("{\n \"account_id\": \"<string>\",\n \"action\": \"<string>\",\n \"params\": {\n \"keyword\": \"<string>\",\n \"count\": 123,\n \"offset\": 123,\n \"post_type\": \"<string>\",\n \"sort_by\": \"<string>\",\n \"post_date\": \"<string>\",\n \"profile_url\": \"<string>\",\n \"company_url\": \"<string>\",\n \"author_company\": \"<string>\",\n \"author_industry\": \"<string>\",\n \"author_job_title\": \"<string>\",\n \"mentions_member\": \"<string>\",\n \"mentions_organization\": \"<string>\",\n \"posted_by\": \"<string>\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.linkupapi.com/v2/content")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<x-api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"account_id\": \"<string>\",\n \"action\": \"<string>\",\n \"params\": {\n \"keyword\": \"<string>\",\n \"count\": 123,\n \"offset\": 123,\n \"post_type\": \"<string>\",\n \"sort_by\": \"<string>\",\n \"post_date\": \"<string>\",\n \"profile_url\": \"<string>\",\n \"company_url\": \"<string>\",\n \"author_company\": \"<string>\",\n \"author_industry\": \"<string>\",\n \"author_job_title\": \"<string>\",\n \"mentions_member\": \"<string>\",\n \"mentions_organization\": \"<string>\",\n \"posted_by\": \"<string>\"\n }\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"posts": [
{
"backend_urn": "urn:li:activity:7454082992819519488",
"shareUrl": "https://www.linkedin.com/posts/jane-doe-42_post-activity-7454082992819519488-lXYU",
"text": "Exciting developments in artificial intelligence this week...",
"numLikes": 234,
"numComments": 45,
"numShares": 12,
"actor_name": "Jane Doe",
"actor_description": "AI Researcher at Acme Corp",
"actor_image": "https://media.licdn.com/dms/image/v2/.../profile.jpg",
"actor_profile_url": "https://www.linkedin.com/in/jane-doe-42",
"created_time": 1777191911,
"post_images": [],
"shareAudience": "PUBLIC"
}
],
"total_results": 1,
"total_available_results": 1240,
"pagination": {
"offset": 0,
"count": 1,
"next_offset": 1,
"has_more": true,
"results_per_page": 50,
"pages_fetched": 1
}
},
"metadata": {
"action": "search",
"account_id": "your-account-id",
"credits_consumed": 1,
"timestamp": "2026-04-26T10:35:00Z"
}
}
{
"success": false,
"error": {
"code": "INVALID_PARAMS",
"message": "At least one search filter is required."
},
"metadata": {
"action": "search",
"account_id": "your-account-id",
"credits_consumed": 0,
"timestamp": "2026-04-26T10:35:00Z"
}
}
Overview
Search for posts using keywords with optional filters by author, company, industry, date, mentions, and more. Pagination is offset-based — setcount for the page size and offset to skip ahead.
This endpoint consumes 1 credit per 10 results returned. The platform returns up to 50 posts per internal request, so larger
count values trigger multiple upstream calls automatically. Ignore this if you’re on per-seat pricing: usage is unlimited.Request
string
required
Your API key for authentication.
string
required
The unique identifier of the account to use.
string
required
Must be
"search".object
Show params properties
Show params properties
string
The search keyword or phrase. Multi-value supported via array (e.g.
["AI", "agents"]).integer
default:10
Number of posts to return. Defaults to
10. Capped at 1000 per call.integer
default:0
Zero-indexed offset into the search results. Defaults to
0. Use pagination.next_offset from a previous response to fetch the next page.string
Filter by content type (e.g.
"VIDEOS", "IMAGES", "ARTICLES").string
default:"date_posted"
Sort order:
"date_posted" (default) or "relevance".string
Filter by date range (e.g.
"past-24h", "past-week", "past-month").string
Filter posts authored by a specific profile. Accepts the URL of the profile on the connected platform.
string
Filter posts authored by a specific company page.
string
Filter by the author’s current company.
string
Filter by the author’s industry.
string
Filter by the author’s job title.
string
Filter posts that mention a specific member.
string
Filter posts that mention a specific organization.
string
Filter by author network:
"first", "following", or "first,following".Response
boolean
Indicates whether the request was successful.
object
Show data properties
Show data properties
array
List of matching posts.
Show post properties
Show post properties
string
Unique identifier of the post. Treat it as an opaque string and pass it back exactly as returned.
string
Public share URL of the post.
string
Plain-text content of the post.
integer
Reaction count.
integer
Comment count.
integer
Share count.
string
Author display name.
string
Author headline.
string
Author profile picture URL.
string
Author’s public profile URL.
integer
Post creation Unix epoch (seconds).
array
List of attached image URLs.
string
Audience scope (e.g.
"PUBLIC").integer
Number of posts returned in this response.
integer
Total number of posts matching the query reported by the platform.
object
Show pagination properties
Show pagination properties
integer
Offset of the first post in this response.
integer
Number of posts returned (mirrors
total_results).integer
Offset to send as
offset in the next request. null when exhausted.boolean
true if more posts are available.integer
Maximum batch size used per upstream request.
integer
Number of internal upstream batches consumed.
object
{
"success": true,
"data": {
"posts": [
{
"backend_urn": "urn:li:activity:7454082992819519488",
"shareUrl": "https://www.linkedin.com/posts/jane-doe-42_post-activity-7454082992819519488-lXYU",
"text": "Exciting developments in artificial intelligence this week...",
"numLikes": 234,
"numComments": 45,
"numShares": 12,
"actor_name": "Jane Doe",
"actor_description": "AI Researcher at Acme Corp",
"actor_image": "https://media.licdn.com/dms/image/v2/.../profile.jpg",
"actor_profile_url": "https://www.linkedin.com/in/jane-doe-42",
"created_time": 1777191911,
"post_images": [],
"shareAudience": "PUBLIC"
}
],
"total_results": 1,
"total_available_results": 1240,
"pagination": {
"offset": 0,
"count": 1,
"next_offset": 1,
"has_more": true,
"results_per_page": 50,
"pages_fetched": 1
}
},
"metadata": {
"action": "search",
"account_id": "your-account-id",
"credits_consumed": 1,
"timestamp": "2026-04-26T10:35:00Z"
}
}
{
"success": false,
"error": {
"code": "INVALID_PARAMS",
"message": "At least one search filter is required."
},
"metadata": {
"action": "search",
"account_id": "your-account-id",
"credits_consumed": 0,
"timestamp": "2026-04-26T10:35:00Z"
}
}
Was this page helpful?