Skip to main content
Built on Task API: Find All enrichments are powered by our Task API. All Task API concepts—including task specifications, processors, output schemas, and pricing—apply directly to enrichments. We handle the orchestration automatically, running tasks on each matched candidate.

Overview

Find All 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 Find All effectively.
Match ConditionsEnrichments
PurposeRequired criteria that determine whether a candidate is a matchAdditional data fields extracted only for matched candidates
When ExecutedDuring Find All generation and evaluation processOnly on matched candidates using the Task API
Output formatBoolean (yes/no) + extracted valueString values (by default)
Type of CriteriaMust be boolean/filterable (yes/no questions)Can be any type of data extraction
Affects Matching?✅ Yes - determines which candidates reach matched status❌ No - does not affect which candidates match
When to AddMust be defined when creating the runCan be added when creating the run, or multiple times after
Example Questions• “Is the company founded after 2020?”
• “Has the company raised Series A funding?”
• “Is the company in the healthcare industry?”
• “What is the CEO’s name?”
• “What is the company’s revenue?”
• “What products does the company offer?”

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 Find All 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

Creating Enrichments

Task API Concepts Apply Here: Enrichments use the same task spec structure as Task API runs. You’ll define:
  • Processors: Choose from base, advanced, or auto (same as Task API)
  • Output Schema: Define structured JSON output (same format as Task API)
  • Pricing: Charged according to Task API processor pricing
The only difference: you don’t need to define input_schema—it’s automatically set to the candidate’s name, url, and description.

Quick Example

curl -X POST "https://api.parallel.ai/v1beta/findall/runs/{run_id}/enrich" \
  -H "x-api-key: $PARALLEL_API_KEY" \
  -H "parallel-beta: findall-2025-09-15" \
  -H "Content-Type: application/json" \
  -d '{
    "processor": "lite",
    "enrichment_output_schema": {
      "type": "json",
      "json_schema": {
        "type": "object",
        "properties": {
          "ceo_name": {
            "type": "string",
            "description": "Name of the CEO"
          },
          "founding_year": {
            "type": "string",
            "description": "Year the company was founded"
          }
        },
        "required": ["ceo_name", "founding_year"],
        "additionalProperties": false
      }
    }
  }'

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 when fetching the final results of a Find All run
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:

Find All Features

  • Preview: Test queries with ~10 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
TODO: add multiple enrichments with different processors