Why schemas vary
Submit the same query twice, get different field names:- LLMs generate extractors dynamically for each job
- Different keywords, validators, and extractors are created
- Field names are chosen semantically to match content
Integration strategies
Store raw data
Preserve the entireenrichment object as JSON:
Map to canonical fields
Translate variable field names to your fixed schema using pattern matching:Process dynamically
Handle all fields without assumptions:Common patterns
Find fields by pattern
Handle multiple possible names
Parse different formats
Revenue can appear as"$14.9 billion", "$14.9B", "14900000000", or 14.9:
What not to do
Don’t hardcode field names
Don’t validate specific fields
Don’t assume consistent fields across records
Test your integration
Submit the same query multiple times to see schema variations:- Doesn’t crash when field names differ
- Extracts data from all variations
- Handles missing fields gracefully
- Works with both empty and populated enrichment objects
Using schema parameter
Theschema parameter can influence field naming but doesn’t guarantee specific
names:
schema_based_summaryfield is added to enrichment- Field names may align with placeholders (
company,revenue,quarter) - Specific field names are not guaranteed

