Call the startScrape MCP tool
Start a LinkedIn scrape into a lead list. LAUNCH action on the user's real LinkedIn account. Six job types, chosen via "type" plus that type's own required field: omit "type" (or pass "sales_navigator"/"linkedin_search") with "url" set to a pasted search URL, same as before, letting the URL shape pick Sales Navigator vs standard search; or pass "type":"post_commenters" or "post_reactors" with "post_url" set to a post URL (the two cannot be told apart from the URL alone, so "type" is required for these); or "type":"company_engagement" with "entity_url" set to a company or profile URL, whose recent posts' reactors and commenters become leads (post_count, default 5, caps how many recent posts it walks); or "type":"content_search" with "search_url" set to a LinkedIn content-search URL (linkedin.com/search/results/content/...), whose matching posts' authors become leads. post_commenters/post_reactors/company_engagement/content_search need an existing lead_list_id (getLeadLists); they do not support new_list_name over MCP, call createLeadList first if a fresh list is wanted. sales_navigator/linkedin_search still take lead_list_id OR new_list_name. Two-step: the FIRST call returns a preview (account, what will be scraped, result cap, today's quota) plus a confirm_token and starts nothing; call again with confirm_token to run it. Sales Navigator searches need a Sales Navigator or Recruiter seat (check getLinkedInAccounts or getPlaybook("lead_gen") first); the other five types run on any connected seat. open_profile_mode filters on open-profile status (sales_navigator/linkedin_search only), but that status is only known once a lead has been visited or enriched (a campaign visit_profile step, or the InMail-activation list_enrichment job), it is NOT learned at scrape/search time, so open_only will typically keep few or none of the leads found by this scrape until they are later visited or enriched. There is no cancel once a scrape starts: it runs to completion and hourly/daily caps bound how much it can spend, so if a result turns out unwanted, delete the target list with deleteLeadList instead of trying to stop the run. sales_navigator/linkedin_search/company_engagement/content_search run in the background: poll getScrapeJob. post_commenters/post_reactors complete synchronously within this call and return their counts directly.
Called through the Actions bridge: the response is that tool's own result, wrapped as { data: <tool result> } under HTTP 200. Billing, daily-cap, and confirm-step outcomes are embedded INSIDE data, never remapped to an HTTP status (see the templated /api/v1/actions/{toolName} operation above for the full protocol, and x-mcp-actions for this tool's machine-readable scope/cap/confirm_behavior fields). Authentication, request-shape, and optional idempotency-protocol failures still use their documented non-200 statuses.
Request
- Base URL: https://app.reachium.io
- URL: https://app.reachium.io/api/v1/actions/startScrape
- Auth: HTTP bearer
Headers
Optional caller-generated key (8-200 characters: letters, digits, dot, underscore, colon, or hyphen). A final tool result is replayed for the same key and body. An ambiguous result remains 409 under that key; reconcile external state before using a new key. Reuse with a different body returns 422.
Request body
Response
The result of calling this tool.
Changes
No recorded changes to this operation across all 3 revisions of this API.