> ## 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.

# Changelog

> Recent updates and improvements to the Pipecorn API.

## Week of July 12, 2026

### New features

* **Find companies by tech stack (technographics).** Search the company database by the technologies companies use, powered by TheirStack. It's a two-step flow so you can size a segment before spending credits:

  * [`POST /intents/accounts/stack/preview`](/api-reference/endpoints/signals/tech_stack_preview) returns the exact match count plus a blurred company sample — free, no credits.
  * [`POST /intents/accounts/stack`](/api-reference/endpoints/signals/tech_stack) starts an async import and delivers the full company records to your `webhook_url`, spending **3 enrichment credits per company**.

  Both accept `stacks` / `excluded_stacks` (technology slugs), `stack_match` (`or` / `and`), `countries`, `included_industries` / `excluded_industries`, and `company_size`. Resolve technology names to the slugs these endpoints expect with the new [`GET /accounts/technologies`](/api-reference/endpoints/miscellaneous/technologies) lookup (free).

## Week of July 5, 2026

### Updates

* **Company hiring — per-job billing, filters, and limits.** [`POST /accounts/company_hiring`](/api-reference/endpoints/accounts/company-hiring) now charges **1 credit per job returned** (previously a flat 3 credits per request), and never returns more jobs than your available credits allow — a lookup that returns no jobs costs nothing. New optional parameters let you narrow and bound results:

  * `limit` — cap the number of jobs returned (positive integer, max 100), which also caps the credits a single lookup can spend.
  * `job_title_keywords` / `excluded_job_title_keywords`, `job_description_keywords` / `excluded_job_description_keywords` — include or exclude jobs by title and description keywords.
  * `job_country_codes` / `excluded_job_country_codes` — include or exclude jobs by 2-letter ISO 3166-1 alpha-2 country code.
  * `full_description` — return full job descriptions; by default descriptions are truncated to a 300-character snippet.

  Responses now include a `truncated` boolean flagging when more jobs matched than were returned. The endpoint's rate limit is now **5 requests per second** (down from 20).

## Week of June 14, 2026

### Updates

* **`live` parameter — search and enrich from Pipecorn's database.** LinkedIn-backed endpoints now accept an optional `live` boolean (default `true`). Set `live: false` to serve results from Pipecorn's people and companies database (Elasticsearch) instead of calling LinkedIn / Sales Navigator in real time — no integration required, and no LinkedIn rate limits. Supported on:

  * [`POST /leads/advanced_search`](/api-reference/endpoints/leads/advanced_search) and its [preview](/api-reference/endpoints/leads/advanced_search_preview)
  * [`POST /leads/search`](/api-reference/endpoints/extract/leads_from_company) (Find people at company)
  * [`POST /leads/single_enrich`](/api-reference/endpoints/leads/single)
  * [`POST /accounts/search`](/api-reference/endpoints/accounts/search) and its [preview](/api-reference/endpoints/accounts/search_preview)
  * [`POST /accounts/single_enrich`](/api-reference/endpoints/accounts/single)
  * [`POST /accounts/headcount`](/api-reference/endpoints/accounts/headcount)

  Database mode returns a Pipecorn-formatted response that can differ from the live LinkedIn payload (for example, `single_enrich` omits email/phone and `headcount` returns a current snapshot without 3/6/12-month evolution). On `POST /leads/advanced_search`, relationship/signal filters that only exist in LinkedIn's graph (`connections_of_profile`, `relationship`, `follows_your_company`, `viewed_your_profile`, `with_shared_experiences`, `posted_on_linkedin`, `past_colleague`) are rejected with `422` when `live: false`. A non-boolean `live` value returns `422`.

## Week of May 31, 2026

### New features

* **Company hiring (job postings).** The new [`POST /accounts/company_hiring`](/api-reference/endpoints/accounts/company-hiring) endpoint returns the list of open job postings indexed for a company. Identify the company with `company_domain`, `company_name`, or `company_linkedin_url`, and optionally narrow to recent posts with `posted_within_days`. Each job includes title, URL, location, employment status, posting date, description, hiring team, and company info. Costs 3 credits per request and is rate-limited to 20 requests per second.

## Week of May 10, 2026

### Updates

* **Filter leads by connections of a profile.** [`POST /leads/advanced_search`](/api-reference/endpoints/leads/advanced_search) and its [preview](/api-reference/endpoints/leads/advanced_search_preview) now accept `connections_of_profile`, a LinkedIn profile URL whose 1st-degree connections become the search audience. Combine it with the usual title, seniority, function, and company filters to mine a specific person's network.

* **Personal email enrichment.** Waterfall enrichment now supports `personal_email` as an `enrichment_type` on both the [async](/api-reference/endpoints/contacts/single_enrich) and [synchronous](/api-reference/endpoints/contacts/sync_single_enrich) waterfall endpoints (single and bulk). Combine it with `email` and `phone` in a single call to retrieve professional email, personal email, and phone in one waterfall. Requests with `personal_email` (or `phone`) must include `linkedin_url`, and personal email enrichment requires per-user GDPR consent — without it, the API returns `422`.

* **Scope phone lookups by country.** All [waterfall enrichment endpoints](/api-reference/endpoints/contacts/single_enrich) (sync, async single, and async bulk) now accept an optional `phone_country_codes` array. Pass ISO country codes to restrict phone results to specific regions and avoid spending credits on out-of-scope numbers.

* **Validation status on enriched emails.** Contact responses now include `email_status` (and `personal_email_status` once a personal email is found) so you can see at a glance whether each address is `valid`, `risky`, or `invalid` without a separate verification call. Returned by [`GET /contacts/{id}`](/api-reference/endpoints/contacts/single_enrich) and the synchronous waterfall.

* **Multiple phone numbers per contact.** The `phone` field in waterfall responses is now an array of E.164-formatted strings, so contacts with several numbers no longer have results truncated to one.

## Week of May 3, 2026

### New features

* **Advanced lead search.** The new [`POST /leads/advanced_search`](/api-reference/endpoints/leads/advanced_search) endpoint runs a full lead search from a structured filter set (titles, seniority, function, tenure, locations, industries, company size, signals, and more) and streams enriched leads to your webhook. No need to build a Sales Navigator URL yourself — Pipecorn translates the filters for you.

* **Search previews for leads and accounts.** Validate filters and size an audience before kicking off a full run. The new preview endpoints return synchronously with the total estimated count plus the first 25 matches, and don't consume credits or trigger webhooks:
  * [`POST /leads/advanced_search/preview`](/api-reference/endpoints/leads/advanced_search_preview)
  * [`POST /accounts/search/preview`](/api-reference/endpoints/accounts/search_preview)

### Updates

* **Engagement counts on LinkedIn posts.** [Extract posts](/api-reference/endpoints/signals/posts) responses now include `engagement_count`, `reactions_count`, and `comments_count` for each post, so you can rank or filter content by traction without a second call.

* **More MCP tools.** The [Pipecorn MCP server](/api-reference/mcp) now exposes `advanced_search_leads` for filter-based lead search, plus list management tools (`create_list`, `get_lists`, `get_list`, `update_list`) so AI assistants can build and update Sales Navigator lists on your behalf.

## Week of April 26, 2026

### New features

* **MCP server for AI assistants.** Connect any MCP-compatible AI assistant — including Claude Desktop, Claude Code, and Cursor — directly to Pipecorn. Once installed, your assistant can find companies, search leads, and enrich contacts from a chat interface using your existing API key. See the [MCP server guide](/api-reference/mcp) for installation instructions and example prompts.

* **Search by saved Persona on Find People in Company.** You can now pass a `persona_id` to the [Find People in Company](/api-reference/endpoints/extract/leads_from_company) endpoint to drive a search from a Persona you've already defined in Pipecorn. When `persona_id` is provided, included and excluded job titles are taken from the saved Persona — no need to inline them in the request.

  Pass one or the other: combining `persona_id` with `job_titles` or `excluded_job_titles` returns a `422`. See the [Personas endpoints](/api-reference/endpoints/personas/index) to list available Persona IDs.

### Updates

* **More flexible people filters on Find People in Company.** [Find People in Company](/api-reference/endpoints/extract/leads_from_company) now accepts any one of `job_titles`, `excluded_job_titles`, `functions`, `seniority_levels`, `included_locations`, `excluded_locations`, or `persona_id` to satisfy the "at least one filter" requirement. Previously only `job_titles` or `persona_id` counted. Requests with none of these return `400`.
