Retrieve a post
direct.lempile.com/api/v1/posts/{post_id}One post (one LinkedIn call).
Authentication
X-API-KEY header·A Lempile Direct key, one per workspace, made in Lempile's dashboard.Path parameters
post_idstringrequiredThe post: its id (digits),
urn:li:activity:…(or augcPost/shareurn) or its URL.
Query parameters
account_idstringrequiredThe account that reads: a Lempile LinkedIn account id (
GET /accountslists them).
Responses
200OK
›
application/json
objectstringrequiredAlwaysPostproviderstringrequiredAlwaysLINKEDINidstringrequiredThe post's activity id (digits).
social_idstringrequiredurn:li:activity:<id>: what comments and reactions take aspost_id.share_urlstringrequiredtitlestringtextstringrequireddatestringrequiredLinkedIn's relative date, e.g.
2d.parsed_datetimestringrequiredThe post's time (ISO 8601), from its id.
reaction_counterintegerrequiredcomment_counterintegerrequiredrepost_counterintegerrequiredimpressions_counterintegerrequired0 unless LinkedIn shows it to the account.
authorPostAuthorrequired›Show fieldsHide fields
public_identifierstring | nullrequiredidstring | nullrequirednamestring | nullrequiredis_companybooleanrequiredheadlinestringprofile_picture_urlstring
permissionsobjectrequired›Show fieldsHide fields
can_reactbooleanrequiredcan_sharebooleanrequiredcan_post_commentsbooleanrequired
is_repostbooleanrequiredtrueon a plain repost (no words of its own): the post is then the reposted one as LinkedIn shows it (id,social_id,text,author, counts), andrepost_id,reposted_byandrepost_parsed_datetimeare the repost's. A repost with words is the reposter's own post (false), withrepost_content.attachmentsarray of PostAttachmentrequired›Show fieldsHide fields
idstring | nullrequiredtypestringrequiredOne ofimgvideourlstring | nullurl_expires_atinteger | nullWhen
urlstops working, in milliseconds since 1970.sizeobject›Show fieldsHide fields
widthintegerrequiredheightintegerrequired
durationinteger | nullA video's length in seconds.
mimetypestringfile_sizeinteger | nullgifbooleanunavailablebooleanrequiredstickerboolean
mentionsarray of objectrequiredPeople and pages named in the text.
›Show fieldsHide fields
startintegerrequiredlengthintegerrequiredurlstringrequired
user_reactedstringThe account's own reaction (LinkedIn's name:
LIKE,PRAISE…), when it reacted.reposted_byPostAuthor›Show fieldsHide fields
public_identifierstring | nullrequiredidstring | nullrequirednamestring | nullrequiredis_companybooleanrequiredheadlinestringprofile_picture_urlstring
repost_idstringA plain repost: the repost's own activity id (what
POST /postsanswered aspost_id, and whatDELETE /posts/{post_id}takes to undo it).repost_contentobjectThe post shared: the reposted post, on a plain repost and on a repost with words.
›Show fieldsHide fields
idstringrequireddatestringrequiredparsed_datetimestringrequiredtextstringrequiredauthorPostAuthorrequired›Show fieldsHide fields
public_identifierstring | nullrequiredidstring | nullrequirednamestring | nullrequiredis_companybooleanrequiredheadlinestringprofile_picture_urlstring
attachmentsarray of PostAttachmentrequired›Show fieldsHide fields
idstring | nullrequiredtypestringrequiredOne ofimgvideourlstring | nullurl_expires_atinteger | nullWhen
urlstops working, in milliseconds since 1970.sizeobject›Show fieldsHide fields
widthintegerrequiredheightintegerrequired
durationinteger | nullA video's length in seconds.
mimetypestringfile_sizeinteger | nullgifbooleanunavailablebooleanrequiredstickerboolean
repost_parsed_datetimestringA plain repost: when it was reposted.
400A required parameter missing (errors/missing_parameters), or one that isn't valid (errors/invalid_parameters, errors/invalid_url, errors/content_too_large).
›
errors/missing_parameters), or one that isn't valid (errors/invalid_parameters, errors/invalid_url, errors/content_too_large).application/json
titlestringrequiredA short title, e.g.
Too many requests.detailstringrequiredWhat happened, in plain words. Never an account's data.
typestringrequiredUnipile's error type:
errors/<kind>. Branch on this, not ondetail.statusintegerrequiredThe HTTP status again.
retry_afterintegerSeconds to wait before trying this account again. Only on 429; the
Retry-Afterheader carries the same value.
401errors/missing_credentials: the X-API-KEY header is missing, wrong or revoked. errors/disconnected_account: LinkedIn signed the account out (or asks it for a security check); reconnect it.
›
errors/missing_credentials: the X-API-KEY header is missing, wrong or revoked. errors/disconnected_account: LinkedIn signed the account out (or asks it for a security check); reconnect it.application/json
titlestringrequiredA short title, e.g.
Too many requests.detailstringrequiredWhat happened, in plain words. Never an account's data.
typestringrequiredUnipile's error type:
errors/<kind>. Branch on this, not ondetail.statusintegerrequiredThe HTTP status again.
retry_afterintegerSeconds to wait before trying this account again. Only on 429; the
Retry-Afterheader carries the same value.
404errors/resource_not_found: an unknown or removed account, an account of another workspace (answered exactly the same), or nothing on LinkedIn with this id.
›
errors/resource_not_found: an unknown or removed account, an account of another workspace (answered exactly the same), or nothing on LinkedIn with this id.application/json
titlestringrequiredA short title, e.g.
Too many requests.detailstringrequiredWhat happened, in plain words. Never an account's data.
typestringrequiredUnipile's error type:
errors/<kind>. Branch on this, not ondetail.statusintegerrequiredThe HTTP status again.
retry_afterintegerSeconds to wait before trying this account again. Only on 429; the
Retry-Afterheader carries the same value.
429errors/too_many_requests: LinkedIn asked the account to slow down (it rests 15 minutes), its daily calls or writes are used up, or it's busy with other calls. Wait retry_after seconds.
›
errors/too_many_requests: LinkedIn asked the account to slow down (it rests 15 minutes), its daily calls or writes are used up, or it's busy with other calls. Wait retry_after seconds.application/json
titlestringrequiredA short title, e.g.
Too many requests.detailstringrequiredWhat happened, in plain words. Never an account's data.
typestringrequiredUnipile's error type:
errors/<kind>. Branch on this, not ondetail.statusintegerrequiredThe HTTP status again.
retry_afterintegerSeconds to wait before trying this account again. Only on 429; the
Retry-Afterheader carries the same value.
500errors/provider_error: LinkedIn answered something Direct couldn't read (nothing was written). errors/unexpected_error: Direct failed.
›
errors/provider_error: LinkedIn answered something Direct couldn't read (nothing was written). errors/unexpected_error: Direct failed.application/json
titlestringrequiredA short title, e.g.
Too many requests.detailstringrequiredWhat happened, in plain words. Never an account's data.
typestringrequiredUnipile's error type:
errors/<kind>. Branch on this, not ondetail.statusintegerrequiredThe HTTP status again.
retry_afterintegerSeconds to wait before trying this account again. Only on 429; the
Retry-Afterheader carries the same value.
503errors/network_down: the account's proxy or browser server didn't answer. Nothing was sent.
›
errors/network_down: the account's proxy or browser server didn't answer. Nothing was sent.application/json
titlestringrequiredA short title, e.g.
Too many requests.detailstringrequiredWhat happened, in plain words. Never an account's data.
typestringrequiredUnipile's error type:
errors/<kind>. Branch on this, not ondetail.statusintegerrequiredThe HTTP status again.
retry_afterintegerSeconds to wait before trying this account again. Only on 429; the
Retry-Afterheader carries the same value.
504errors/request_timeout: LinkedIn didn't answer in time. On a write: an unknown outcome (it may have been sent); it's never retried and its Idempotency-Key never writes again.
›
errors/request_timeout: LinkedIn didn't answer in time. On a write: an unknown outcome (it may have been sent); it's never retried and its Idempotency-Key never writes again.application/json
titlestringrequiredA short title, e.g.
Too many requests.detailstringrequiredWhat happened, in plain words. Never an account's data.
typestringrequiredUnipile's error type:
errors/<kind>. Branch on this, not ondetail.statusintegerrequiredThe HTTP status again.
retry_afterintegerSeconds to wait before trying this account again. Only on 429; the
Retry-Afterheader carries the same value.
Was this page helpful?