Skip to main content
For AI agents: a documentation index is available at https://docs.parallel.ai/llms.txt. The full text of all docs is at https://docs.parallel.ai/llms-full.txt. You may also fetch any page as Markdown by appending .md to its URL or sending Accept: text/markdown.
Built on Task API: FindAll enrichments use Task API processors, JSON output schemas, and pricing. FindAll supplies the candidate input and handles orchestration automatically, running a task on each matched candidate.

Overview

FindAll enrichments allow you to extract additional non-boolean information about candidates that should not be used as filters for matches. For example, if you’re finding companies, you might want to extract the CEO name as pure enrichment data—something you want to know about each match, but not something that should affect whether a candidate matches your criteria.

Match Conditions vs. Enrichments

Understanding the distinction between match conditions and enrichments is fundamental to using FindAll effectively.

Why This Separation Matters

This two-stage approach is efficient and cost-effective:
  1. Filter first: Match conditions quickly narrow down candidates to relevant matches
  2. Enrich selectively: Extract detailed data only from the matches that matter
This means you don’t pay to enrich hundreds of candidates that won’t match your criteria.

Adding Enrichments

Enrichments can be added anytime after a FindAll run is created, even for completed runs. Once added:
  • Enrichments will run on all matches (both ones that exist when the request is made and all future matches)
  • If enrichments are present, extend will also perform the same set of enrichments on all extended matches
Adding an enrichment to a terminal run requeues the run while FindAll schedules and processes the enrichment.

Creating Enrichments

Task API Concepts Apply Here: Enrichments use the same task spec structure as Task API runs. You’ll define:
  • Processors: Choose any supported Task API processor
  • Output Schema: Define structured JSON output (same format as Task API)
  • Pricing: Charged according to Task API processor pricing
You don’t define input_schema. FindAll supplies entity_name, entity_url, and entity_description for each matched candidate; entity_name is always present.

Quick Example

Retrieving Enrichment Results

You can access enrichment results through multiple methods:
  • Streaming Events (/events): Enrichment results stream in real-time as they complete
  • Webhooks: Subscribe to findall.candidate.enriched events to receive enrichment results via HTTP callbacks
  • Result endpoint (/result): Enrichment data is included in candidate snapshots once it is available; the endpoint works while a run is active and after it stops
Enrichment data is added to the candidate’s output object with type: "enrichment". See Candidates for details on how enrichments appear in the candidate structure.

Task API Foundation

Enrichments are built on Task API, so these guides will help you understand how they work:

FindAll Features

  • Preview: Test queries with 5–10 evaluated candidates before running full searches
  • Extend Runs: Increase match limits without paying new fixed costs
  • Streaming Events: Receive real-time updates via Server-Sent Events
  • Webhooks: Configure HTTP callbacks for run completion and matches
  • Run Lifecycle: Understand run statuses and how to cancel runs
  • API Reference: Complete endpoint documentation