Skip to main content

Collect profiles from posts

Collect LinkedIn profiles of people who reacted to or commented on selected posts and save the results to a new List in Woodpecker.

This request creates a collector for each post and selected engagement type. Processing is asynchronous - use list collection jobs or get a collection job to check progress.

Each request creates one List containing the collected profile URLs, post URLs, reaction types, and comment text. Open it in Woodpecker to work with the results.

Request

Credit usage

This request can use account credits. Collecting profiles from reactions costs 1 credit per 100 profiles (0.01 credit per profile), while collecting profiles from comments costs 3 credits per 100 profiles (0.03 credit per profile). Credits are used only for profiles that are successfully collected. GET endpoints used to check collection status do not use credits.

Most collection jobs complete within 5-10 minutes. Check progress using either GET endpoint. Submitting the same post and source again does not speed up collection and may be rejected while a matching collector is still active.

Endpoint

POST https://api.woodpecker.co/rest/v2/linkedin/post_profiles_collectors/enqueue

Headers

x-api-key: {YOUR_API_KEY}
Content-Type: application/json

For details on how to authenticate your requests, please see the authentication guide.

Body

Submit up to 100 unique LinkedIn post URLs. In collect_from, set comments, reactions, or both to true. Both options save the LinkedIn profile URL and post URL to the new list. Reaction collection also saves the reaction type, while comment collection saves the comment text.

{
"post_urls": [
"https://www.linkedin.com/posts/linkedin_post_url"
],
"collect_from": {
"comments": true,
"reactions": true
},
"target_new_list_name": "ICP profiles"
}

Body schema

FieldTypeRequiredDescription
post_urlsarray[string]Yes1 to 100 unique LinkedIn post URLs. Each URL must start with https://www.linkedin.com/posts/
collect_fromobjectYesSources from which profiles should be collected
  └─ commentsbooleanYesSet to true to collect profiles that commented on the posts, together with their comment text
  └─ reactionsbooleanYesSet to true to collect profiles that reacted to the posts, together with their reaction type
target_new_list_namestringYesBase name for the new list; Woodpecker appends - LinkedIn Leads at the end

Request samples

Collect profiles from comments and reactions

curl --request POST \
--url "https://api.woodpecker.co/rest/v2/linkedin/post_profiles_collectors/enqueue" \
--header "x-api-key: {YOUR_API_KEY}" \
--header "Content-Type: application/json" \
--data '{
"post_urls": [
"https://www.linkedin.com/posts/linkedin_post_url"
],
"collect_from": {
"comments": true,
"reactions": true
},
"target_new_list_name": "Pied Piper post engagement"
}'

Response

Response examples

The collectors were accepted for processing. Each object represents one post and one source. Store each collector_uid and use get a collection job to check its status

{
"accepted_posts": [
{
"collector_uid": "e9e6abc4-799e-4c24-b412-7927b1db919d",
"post_url": "https://www.linkedin.com/posts/linkedin_post_url",
"target_list_uid": "5f17c0d2-5100-4bb9-a312-fe17f27f94c1",
"collect_from": "REACTIONS"
},
{
"collector_uid": "caf15107-53dc-4f19-8920-ddfbd95b44c3",
"post_url": "https://www.linkedin.com/posts/linkedin_post_url",
"target_list_uid": "5f17c0d2-5100-4bb9-a312-fe17f27f94c1",
"collect_from": "COMMENTS"
}
]
}

Body schema

FieldTypeDescription
accepted_postsarray[object]Collectors accepted for asynchronous processing
  └─ collector_uidstringCollector UUID to use with the get endpoint
  └─ post_urlstringLinkedIn post URL submitted for this collector
  └─ target_list_uidstringUUID of the new List shared by all collectors from this request
  └─ collect_fromstringCollection source: REACTIONS or COMMENTS