Overview
The/v1beta/findall/runs/{findall_id}/events endpoint provides real-time updates on candidates as they are discovered and evaluated using Server-Sent Events (SSE). Events are delivered in chronological order, each including event_id, timestamp, type, and data.
Resumability: Use last_event_id query parameter to resume from any point after disconnections. The last_event_id is included in each event and in the /result endpoint response—if null, the stream starts from the beginning.
Duration: Streams remain open while the run is active or until an optional timeout (seconds) is reached. A findall.status heartbeat is sent every 10 seconds to keep connections alive.
Accessing the Event Stream
cURL
Event Types
The SSE endpoint emits the following event types:| Event Type | Description |
|---|---|
findall.status | Heartbeat of FindAllRun object every 10 seconds, or when Find All status changes |
findall.candidate.generated | Emitted when a new candidate is discovered, before evaluation |
findall.candidate.matched | Emitted when a candidate successfully matches all match conditions |
findall.candidate.unmatched | Emitted when a candidate fails to match all conditions |
findall.candidate.enriched | Emitted when enrichment data has been extracted for a candidate |
For a complete guide to candidate object structure, states, and fields, see Candidates.
Event Payloads
findall.status — Heartbeat of FindAllRun object every 10 seconds, or when Find All status changes.Related Topics
- Preview: Test queries with ~10 candidates before running full searches
- Generators and Pricing: Understand processor options, pricing, and selectivity requirements
- Enrichments: Extract additional structured data for matched candidates
- Extend Runs: Increase match limits without paying new fixed costs
- Webhooks: Configure HTTP callbacks for run completion and matches
- Run Lifecycle: Understand run statuses and how to cancel runs
- API Reference: Complete endpoint documentation