POST /public/enrich
Enrich items with AI-powered web research. Every extracted field includes source URLs.Request Parameters
Core Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
items | array | Yes | - | JSON objects to enrich |
output_schema | array | Yes | - | Fields to extract (see Output Schema) |
prompt | string | No | "" | Search prompt guiding web research |
Search Options
| Parameter | Type | Default | Description |
|---|---|---|---|
speed | string | "medium" | "fast" (~1 min), "medium" (~2 min), "slow" (10-15 min, most thorough) |
allowed_domains | array | any | Restrict sources to these domains only |
web_search | boolean | true | Set false to skip web search and use input data directly |
Taxonomy & Quality
| Parameter | Type | Default | Description |
|---|---|---|---|
taxonomy | object | - | Taxonomy definition for category prediction |
predict_taxonomy | boolean | false | Predict category for each item |
quality_prompt | string | - | Prompt for quality scoring (adds 1-5 score) |
validate_semantics | boolean | false | AI validates values match field descriptions |
Job Control
| Parameter | Type | Default | Description |
|---|---|---|---|
async_mode | boolean | false | Return immediately with job_id |
max_rows | integer | - | Process only first N items (dry run) |
source_activity_id | string | - | Resume from previous job to process remaining items |
include_source_explanations | boolean | false | Add explanation for each field value |
Output Schema
Define fields to extract. Each field needs aname, type, and description.
Field Options
| Option | Type | Description |
|---|---|---|
name | string | Field name (required) |
type | string | string, number, integer, boolean, array |
description | string | What to extract (required) |
unit | string | Units for numbers (e.g., "kg", "mm") |
enum | array | Constrain to specific values |
sample_values | array | Example values to guide extraction |
array_element_type | string | For arrays: string, number, image_url |
Response
Response Fields
| Field | Type | Description |
|---|---|---|
job_id | string | Job ID for tracking |
results | array | Enriched items (empty if async_mode=true) |
total_items | integer | Items processed |
total_rows | integer | Total items before max_rows limit |
successful | integer | Successfully enriched items |
credits_used | integer | Credits used (1 per item) |
status | string | "running" or "completed" |
Result Item Fields
| Field | Type | Description |
|---|---|---|
original_data | object | Input data |
enriched_fields | object | {field: {value, sources[]}} |
all_sources | array | All URLs scraped |
error | string | Error message if failed |
category_id | string | Predicted category (if taxonomy enabled) |
category_path | string | Full path like "Bearings > Ball Bearings" |
taxonomy_attributes | object | Category-specific attributes |
quality_score | integer | 1-5 score (if quality_prompt set) |
quality_result | object | {score, explanation, issues, suggestions} |
review_info | object | AI reasoning and flags |
GET /public/enrich/
Poll enrichment job status and retrieve results.Status Values
| Status | Description |
|---|---|
running | Job is processing |
completed | Job finished successfully |
pending_review | Results staged for review |
failed | Job failed |
Source Citations
Every field includes URLs showing where data was found.INPUT:field_name:
AI Transparency
Every result includesreview_info with AI reasoning: