Post Details
curl --request POST \
--url https://api.datamagnet.co/api/v1/post \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"url": "<string>"
}
'import requests
url = "https://api.datamagnet.co/api/v1/post"
payload = { "url": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({url: '<string>'})
};
fetch('https://api.datamagnet.co/api/v1/post', 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.datamagnet.co/api/v1/post",
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([
'url' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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.datamagnet.co/api/v1/post"
payload := strings.NewReader("{\n \"url\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.datamagnet.co/api/v1/post")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"url\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.datamagnet.co/api/v1/post")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"url\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"message": {
"post_text": "We're growing the Product team! We're looking for a talented PM to help us drive subscription revenue. Check out the link below if you fit the bill.",
"post_link": "https://www.linkedin.com/feed/update/urn:li:activity:7219434359085252608",
"links_in_post": [],
"image_component_all_dimentions": [],
"actor": {
"actor_image": "https://media.licdn.com/dms/image/...",
"actor_description": "VP of Product at ExampleCo",
"actor_name": "John Smith",
"actor_sub_description": "1yr • Edited • ",
"actor_link": "https://www.linkedin.com/in/johnsmith..."
},
"header": {
"actor_image": "https://media.licdn.com/dms/image/...",
"actor_description": "Product Community Manager at ExampleCo",
"actor_name": "Product Community",
"actor_sub_description": "1yr • Edited • ",
"actor_link": "https://www.linkedin.com/company/product-community..."
},
"is_repost": true,
"reshared_post": {
"post_text": "We're growing the Product team! ...",
"post_link": "https://www.linkedin.com/feed/update/urn:li:activity:7219379021761916928",
"links_in_post": [],
"actor": {
"actor_image": "https://media.licdn.com/dms/image/...",
"actor_description": "VP of Product at ExampleCo",
"actor_name": "John Smith",
"actor_sub_description": "1yr",
"actor_link": "https://www.linkedin.com/in/johnsmith..."
},
"posted_at": "2024-07-17T18:02:11.000Z",
"posted_ago": "1yr",
"urn": "urn:li:activity:7219379021761916928"
},
"social_count": {
"num_likes": 124,
"num_comments": 11,
"num_shares": 13,
"reaction_type_counts": [
{
"count": 108,
"reaction_type": "LIKE"
},
{
"count": 10,
"reaction_type": "PRAISE"
},
{
"count": 4,
"reaction_type": "EMPATHY"
}
]
},
"posted_at": "2024-07-17T20:14:41.000Z",
"posted_ago": "1yr • Edited • ",
"urn": "urn:li:activity:7219434359085252608",
"reactions_urn": "urn:li:activity:7219379021761916928",
"comments_urn": "urn:li:fsd_socialDetail:(urn:li:activity:7219379021761916928,urn:li:activity:7219434359085252608,urn:li:highlightedReply:-)",
"reposts_urn": "urn:li:activity:7219379021761916928"
},
"credit_used": 1
}
Post Details
Retrieve detailed information about a single LinkedIn post by URL, including author, content, media, engagement counts, and publish timestamp.
POST
/
api
/
v1
/
post
Post Details
curl --request POST \
--url https://api.datamagnet.co/api/v1/post \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"url": "<string>"
}
'import requests
url = "https://api.datamagnet.co/api/v1/post"
payload = { "url": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({url: '<string>'})
};
fetch('https://api.datamagnet.co/api/v1/post', 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.datamagnet.co/api/v1/post",
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([
'url' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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.datamagnet.co/api/v1/post"
payload := strings.NewReader("{\n \"url\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.datamagnet.co/api/v1/post")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"url\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.datamagnet.co/api/v1/post")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"url\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"message": {
"post_text": "We're growing the Product team! We're looking for a talented PM to help us drive subscription revenue. Check out the link below if you fit the bill.",
"post_link": "https://www.linkedin.com/feed/update/urn:li:activity:7219434359085252608",
"links_in_post": [],
"image_component_all_dimentions": [],
"actor": {
"actor_image": "https://media.licdn.com/dms/image/...",
"actor_description": "VP of Product at ExampleCo",
"actor_name": "John Smith",
"actor_sub_description": "1yr • Edited • ",
"actor_link": "https://www.linkedin.com/in/johnsmith..."
},
"header": {
"actor_image": "https://media.licdn.com/dms/image/...",
"actor_description": "Product Community Manager at ExampleCo",
"actor_name": "Product Community",
"actor_sub_description": "1yr • Edited • ",
"actor_link": "https://www.linkedin.com/company/product-community..."
},
"is_repost": true,
"reshared_post": {
"post_text": "We're growing the Product team! ...",
"post_link": "https://www.linkedin.com/feed/update/urn:li:activity:7219379021761916928",
"links_in_post": [],
"actor": {
"actor_image": "https://media.licdn.com/dms/image/...",
"actor_description": "VP of Product at ExampleCo",
"actor_name": "John Smith",
"actor_sub_description": "1yr",
"actor_link": "https://www.linkedin.com/in/johnsmith..."
},
"posted_at": "2024-07-17T18:02:11.000Z",
"posted_ago": "1yr",
"urn": "urn:li:activity:7219379021761916928"
},
"social_count": {
"num_likes": 124,
"num_comments": 11,
"num_shares": 13,
"reaction_type_counts": [
{
"count": 108,
"reaction_type": "LIKE"
},
{
"count": 10,
"reaction_type": "PRAISE"
},
{
"count": 4,
"reaction_type": "EMPATHY"
}
]
},
"posted_at": "2024-07-17T20:14:41.000Z",
"posted_ago": "1yr • Edited • ",
"urn": "urn:li:activity:7219434359085252608",
"reactions_urn": "urn:li:activity:7219379021761916928",
"comments_urn": "urn:li:fsd_socialDetail:(urn:li:activity:7219379021761916928,urn:li:activity:7219434359085252608,urn:li:highlightedReply:-)",
"reposts_urn": "urn:li:activity:7219379021761916928"
},
"credit_used": 1
}
Post Details
Cost:1 credit / successful request.
This endpoint retrieves comprehensive details about a single LinkedIn post, including the post text, author information, social engagement metrics, attachments, and repost information.
This page is the current contract for
POST /api/v1/post. Engagement counts live
under social_count (num_likes, num_comments, num_shares) and the publish time is
posted_at. There is no engagement object and no created_at field.Do not confuse this with the deprecated POST /api/v1/posts (plural), a legacy
page-scraping alias that returns a different, less reliable shape.Post details endpoint
This endpoint allows you to get full details of any LinkedIn post by providing its URL.Required attributes
string
required
The LinkedIn post URL. Supports multiple URL formats:
https://www.linkedin.com/posts/username_slug-activity-7430615551086850048-XXXXhttps://www.linkedin.com/posts/username_slug-ugcPost-7430527985071595520-XXXXhttps://www.linkedin.com/feed/update/urn:li:activity:7430615551086850048
Response
{
"message": {
"post_text": "We're growing the Product team! We're looking for a talented PM to help us drive subscription revenue. Check out the link below if you fit the bill.",
"post_link": "https://www.linkedin.com/feed/update/urn:li:activity:7219434359085252608",
"links_in_post": [],
"image_component_all_dimentions": [],
"actor": {
"actor_image": "https://media.licdn.com/dms/image/...",
"actor_description": "VP of Product at ExampleCo",
"actor_name": "John Smith",
"actor_sub_description": "1yr • Edited • ",
"actor_link": "https://www.linkedin.com/in/johnsmith..."
},
"header": {
"actor_image": "https://media.licdn.com/dms/image/...",
"actor_description": "Product Community Manager at ExampleCo",
"actor_name": "Product Community",
"actor_sub_description": "1yr • Edited • ",
"actor_link": "https://www.linkedin.com/company/product-community..."
},
"is_repost": true,
"reshared_post": {
"post_text": "We're growing the Product team! ...",
"post_link": "https://www.linkedin.com/feed/update/urn:li:activity:7219379021761916928",
"links_in_post": [],
"actor": {
"actor_image": "https://media.licdn.com/dms/image/...",
"actor_description": "VP of Product at ExampleCo",
"actor_name": "John Smith",
"actor_sub_description": "1yr",
"actor_link": "https://www.linkedin.com/in/johnsmith..."
},
"posted_at": "2024-07-17T18:02:11.000Z",
"posted_ago": "1yr",
"urn": "urn:li:activity:7219379021761916928"
},
"social_count": {
"num_likes": 124,
"num_comments": 11,
"num_shares": 13,
"reaction_type_counts": [
{
"count": 108,
"reaction_type": "LIKE"
},
{
"count": 10,
"reaction_type": "PRAISE"
},
{
"count": 4,
"reaction_type": "EMPATHY"
}
]
},
"posted_at": "2024-07-17T20:14:41.000Z",
"posted_ago": "1yr • Edited • ",
"urn": "urn:li:activity:7219434359085252608",
"reactions_urn": "urn:li:activity:7219379021761916928",
"comments_urn": "urn:li:fsd_socialDetail:(urn:li:activity:7219379021761916928,urn:li:activity:7219434359085252608,urn:li:highlightedReply:-)",
"reposts_urn": "urn:li:activity:7219379021761916928"
},
"credit_used": 1
}
The post details model
Properties
object
The post details payload.
Show Post object
Show Post object
Post Content
string
The full text content of the post.
string
Direct LinkedIn URL to the post.
string
ISO 8601 timestamp when the post was published, e.g.
"2024-07-17T20:14:41.000Z".
This is the field to sort and filter on.string
Human-readable age of the post, exactly as LinkedIn renders it (e.g.
"1yr • Edited •").
This is a display string whose wording varies, so parse posted_at instead.string
Unique LinkedIn URN identifier for the post.
boolean
Whether this post is a repost of another post.
array
List of URLs found in the post text.
Author
object
Media
array
Media attached to the post, in every dimension LinkedIn serves. Item shape is
passed through from the upstream provider and is not normalised, so treat entries
as opaque objects rather than depending on a fixed key set. Empty array when the
post has no media.
Reposts
object | null
On a repost, the account that reshared it.
null on an original post.Note that LinkedIn’s own feed structure puts the original author in actor
and the resharer in header, and this endpoint mirrors that. header uses the
same five actor_* keys as the actor object above.object | null
The original post behind a repost.
null on an original post.Show Reshared post object
Show Reshared post object
string
Text of the original post.
string
LinkedIn URL of the original post.
array
URLs found in the original post text.
object
The original author, in the same actor shape described above.
string
When the original post was published.
string
Human-readable age of the original post.
string | null
URN of the original post. May be
null depending on which upstream provider
served the request.Social Engagement
object
Engagement metrics for the post.
Show Social count object
Show Social count object
Related URNs
string
URN to use for fetching reactions via the Post Reactions endpoint.
string
URN to use for fetching comments via the Post Comments endpoint.
string
URN to use for fetching reposts via the Post Reposts endpoint.
integer
Number of credits consumed by this request.
Was this page helpful?