{
  "openapi": "3.0.1",
  "info": {
    "title": "LinkedIn Profile Posts Scraper With Lead Enrichment",
    "description": "Scrape LinkedIn profile posts with lead enrichment data, including post content, timestamps, engagement, job titles, companies, locations, and profile URLs. Discover active prospects, analyze interests, enrich B2B leads, personalize outreach, and support sales and marketing campaigns.",
    "version": "0.9",
    "x-build-id": "NrOcgICQkQeNwBXkD"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapier~linkedin-profile-post-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapier-linkedin-profile-post-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/scrapier~linkedin-profile-post-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapier-linkedin-profile-post-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/scrapier~linkedin-profile-post-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapier-linkedin-profile-post-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "required": [
          "urls"
        ],
        "properties": {
          "urls": {
            "title": "🔗 LinkedIn profile URLs",
            "type": "array",
            "description": "One or more public LinkedIn profile URLs, e.g. https://www.linkedin.com/in/satyanadella. 📋 Paste each URL on a new line.",
            "items": {
              "type": "string"
            }
          },
          "maxPosts": {
            "title": "📄 Max posts per profile",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "Maximum number of posts to fetch per profile. 🎯 Each post is a separate page fetch, so lower values finish faster. Default: 10.",
            "default": 10
          },
          "includeEngagedLeads": {
            "title": "🎯 Include engaged leads (commenters)",
            "type": "boolean",
            "description": "Promote every real person who commented on a scraped post into its own labeled lead row (type=\"engagedLead\", linked to the post via parentId). Only people whose comment carries a real name and a real profile link are included. Default: true.",
            "default": true
          },
          "minSeniorityLevel": {
            "title": "🏅 Minimum author seniority level",
            "enum": [
              "any",
              "manager",
              "director",
              "vp",
              "executive"
            ],
            "type": "string",
            "description": "Keep only posts whose author's scraped headline classifies at or above this seniority (rule-based keyword match: CEO/Founder/VP/Director/Head of…). \"Any\" disables the filter. Default: Any.",
            "default": "any"
          },
          "enrichLeadProfiles": {
            "title": "🧭 Enrich leads from their own profile",
            "type": "boolean",
            "description": "Fetch each commenter's public LinkedIn profile to read their real headline, current employer and location. 🔒 These fields always come from the lead's own profile page — never from the post body or a caption. Turn off for a faster, name-and-comment-only run. Default: true.",
            "default": true
          },
          "maxLeadProfileFetches": {
            "title": "🔢 Max lead profiles to fetch",
            "minimum": 0,
            "maximum": 500,
            "type": "integer",
            "description": "Upper bound on how many commenter profiles are fetched per run. Leads past the budget still appear with their name, profile URL and comment — just without employer/headline. Default: 60.",
            "default": 60
          },
          "useGoogleDiscovery": {
            "title": "🔎 Top up post discovery with Google",
            "type": "boolean",
            "description": "A profile page publicly lists only its ~6–9 most recent posts. When enabled, the actor asks Google for additional post permalinks by the same author to reach your \"Max posts\" target. Default: true.",
            "default": true
          },
          "rateLimitDelay": {
            "title": "⏱️ Rate limit delay (seconds)",
            "minimum": 0,
            "maximum": 30,
            "type": "integer",
            "description": "Base delay between requests. Higher values are slower but gentler on the target. Default: 1.",
            "default": 1
          },
          "fetchRetries": {
            "title": "🔁 Fetch retries per request",
            "minimum": 0,
            "maximum": 10,
            "type": "integer",
            "description": "Retry attempts per connection tier before falling through to the next one. Default: 2.",
            "default": 2
          },
          "proxyConfiguration": {
            "title": "🛡️ Proxy Configuration",
            "type": "object",
            "description": "LinkedIn answers unproxied requests for profile pages with HTTP 999, so the actor routes those through Apify Proxy automatically. 🔒 Optional: pin a specific group or country here."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}