Comment on post
Queue a PUBLIC comment on the person's post - their most recent post, or a specific one via post_id.
Tool: comment_on_post
Public content: confirm copy with the user before calling.
Parameters
| Param | Type | Required | Description |
|---|---|---|---|
person_id | string (slug or UUID) | no | Whose post to comment on. One of person_id / linkedin_url is required. |
linkedin_url | string | no | OR act by LinkedIn profile URL - matches the existing person; someone not yet imported is created, enriched (best-effort), and filed into today's misc lead group. A URL pasted into person_id is treated the same way. Alias: profile_url. |
body | string | yes | Comment text. Alias: text. |
post_id | string | no | Post social_id (urn:li:activity:...). Default: the person's most recent post, resolved at send time. A pasted URL here is auto-converted. |
post_url | string | no | OR a pasted post URL - linkedin.com/posts/...-activity-<id>-... or /feed/update/urn:li:activity:<id>/ - transformed to the post id automatically. |
connected_account_id | string (slug or UUID) | no | Seat to act as. Alias: account_id. |
Template variables ({{first_name}}, {{custom.<key>}}, ...) render at queue time: unknown names →
validation_error; names the person has no value for →missing_variables- empty text is never sent.Public content - the comment is visible to everyone; confirm copy with the user before calling.
⚠️ Not yet live-verified: comment_on_post is the one LinkedIn action that has not been smoke-tested against the real provider; the queue-time sample below is accurate, but live send behavior is unconfirmed.
Sample request — success
{
"person_id": "marco-rossi-0004",
"body": "Great breakdown — the onboarding funnel point especially.",
"post_id": "urn:li:activity:7212345678901234567"
}Sample request — by post url
{
"person_id": "marco-rossi-0004",
"body": "Great thread — the ramp-time data point stood out.",
"post_url": "https://www.linkedin.com/posts/marco-rossi_plg-onboarding-activity-7212345678901234567-Ab1C"
}Check LinkedIn connection
Check whether a person is a 1st-degree LinkedIn connection of one seat (connected_account_id) or every connected seat.
React to recent post
Queue a reaction to the person's most recent post (soft-skips if they have no reactable post) - the ad-hoc form of the react_to_recent_post sequence step.