> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pipecorn.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Post engagers

> Start an asynchronous extraction of leads that engaged with a LinkedIn post.

Start an asynchronous extraction of leads that engaged with a LinkedIn post. You must provide:

* **post\_url** — A valid LinkedIn post URL (use the link from the **Share** button on the post).
* **webhook\_url** — URL where results will be sent when the job completes.
* **engagement\_type** — One of `reactions`, `comments`, or `all`.

Optionally filter by **persona** (UUID), set a **lead\_list\_name**, **company\_size**, or **exclude\_people\_from\_same\_company**. The API responds immediately with a `search_id` and `expected_profiles_count`; the actual engager profiles are delivered to your webhook.


## OpenAPI

````yaml POST /intents/leads/posts_engagers
openapi: 3.0.1
info:
  title: Pipecorn Accounts API
  description: Pipecorn Accounts API
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://app.pipecorn.com/api/v2/
security:
  - defaultApiKey: []
paths:
  /intents/leads/posts_engagers:
    post:
      summary: Extract post engagers
      description: >-
        Start an asynchronous extraction of leads that engaged with a LinkedIn
        post.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - post_url
                - webhook_url
                - engagement_type
              properties:
                post_url:
                  type: string
                  format: uri
                  description: >-
                    Valid LinkedIn post URL (use the link from the "share"
                    button)
                  example: >-
                    https://www.linkedin.com/feed/update/urn:li:activity:1234567890123456789
                webhook_url:
                  type: string
                  format: uri
                  description: URL to receive the extracted engagers when the job completes
                  example: https://your-company.com/webhooks/post-engagers
                engagement_type:
                  type: string
                  enum:
                    - reactions
                    - comments
                    - all
                  description: >-
                    Which engagements to extract: reactions only, comments only,
                    or all
                  example: all
                persona:
                  type: string
                  format: uuid
                  description: Optional persona UUID to filter engagers
                  example: 550e8400-e29b-41d4-a716-446655440000
                lead_list_name:
                  type: string
                  description: >-
                    Custom name for the search (defaults to "Social Post
                    Tracking - <timestamp>")
                  example: Q1 campaign post engagers
                company_size:
                  type: array
                  items:
                    type: string
                  description: Optional company size filters for engagers
                exclude_people_from_same_company:
                  type: boolean
                  description: >-
                    Whether to exclude engagers from the same company as the
                    post author
                  example: false
      responses:
        '201':
          description: >-
            Post engagement extraction started; results will be sent to the
            webhook
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Post engagement extraction will begin shortly.
                  search_id:
                    type: string
                    format: uuid
                    description: Unique identifier for the search
                    example: 550e8400-e29b-41d4-a716-446655440000
                  post_url:
                    type: string
                    format: uri
                    description: The post URL being tracked
                  expected_profiles_count:
                    type: integer
                    description: >-
                      Number of profiles that will be extracted and sent to the
                      webhook
                    example: 150
        '400':
          description: >-
            Bad request (missing required keys, invalid post URL, or invalid
            engagement_type)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                missing_keys:
                  value:
                    error: 400
                    message: >-
                      Missing required keys: post_url, webhook_url,
                      engagement_type
                invalid_post_url:
                  value:
                    error: 400
                    message: >-
                      Valid LinkedIn post URL is required. Use the link obtained
                      after clicking on "share" button
                invalid_engagement_type:
                  value:
                    error: 400
                    message: >-
                      Invalid engagement_type. Must be one of: reactions,
                      comments, all
        '422':
          description: >-
            Unprocessable (persona not found, post ID not found, or plan limit
            reached)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                persona_not_found:
                  value:
                    error: 422
                    message: Persona not found
                post_id_not_found:
                  value:
                    error: 422
                    message: Post ID not found
                plan_limit:
                  value:
                    error: 422
                    message: Can't proceed with the request. Plan limit reached.
components:
  schemas:
    Error:
      type: object
      properties:
        error:
          type: integer
          format: int32
        message:
          type: string
  securitySchemes:
    defaultApiKey:
      type: apiKey
      in: header
      name: X-API-KEY

````