Skip to main content
POST
Research Prospects
Run a custom, AI-powered research task over a list of prospects. Describe the task as a natural-language query or a prompt_template, define the result shape with an output_schema, and the engine returns structured JSON for each person.
How Research works — query vs prompt_template, the record context, real-time web research and its functions, credit usage, and error handling — is documented once on the Research (GenAI) overview. This page covers what is specific to the prospects endpoint.

Record fields

Reference any of these with {{ record['field_name'] }} in a prompt_template. When you pass a query instead, the same fields are made available to the prompt generator as the entity’s context.

Custom fields

Any key you attach in custom_fields is merged into the same record object and can be referenced exactly like a profile field — for example {{ record['campaign_name'] }}. There is no fixed list: use whatever keys you send per entity. Values are treated as strings.
Record fields are populated from the entity’s resolved Explorium profile, so a given field may be empty when that attribute isn’t available for the entity. Write prompts that degrade gracefully when a field is missing, and instruct the model to use web research to fill gaps where appropriate.

Request

The request body has two top-level keys:
  • prospects — the list of entities to research. Each item has a prospect_id and may include an optional custom_fields object.
  • parameters — controls how the analysis is generated and what shape the result takes. Identical on both endpoints; see the overview.
object[]
required
The list of entities to research. Each entity is processed independently, and results are returned in the same order.
object
required
Provide either query or prompt_template, never both and never neither — see query vs prompt_template. output_schema is required with prompt_template and optional with query.

Examples

Example request (cURL)

Response

A successful request returns a 200 with a data array — one entry per input entity, in input order — plus a total_results count. Each successful result contains the prospect_id and the generated fields defined by the output_schema. Rows that fail carry an _error field instead of the generated fields, rather than being dropped.
object[]
One result per input entity, in input order.
integer
The total number of results returned in data.

Example response

Example failed row

Researching businesses instead

This endpoint researches prospects and exposes the prospect record fields above. To research businesses — with businesse fields such as organization_name, revenue_range, and full_tech_stack — use Businesses research. For lists larger than a single request, use the asynchronous variant.

Authorizations

api_key
string
header
required

Body

application/json
parameters
GenAIResearchParams · object
required
prospects
V2ProspectResearchInput · object
required
request_context
Request Context · object | null
Example:

null

Response

Successful Response

This is base response model for all responses in partner service.

response_context
ResponseContext · object
required
data
V2ProspectEnrichRow[GenAIResearchOutputSchema] · object[]
required
total_results
integer
required
generated_prompt
string