Get Reconciliation Config
Retrieve the stored reconciliation config for a reference dataset, including anchor key columns, per-column rules, and validation settings.
Retrieve the reconciliation config persisted against a reference dataset. The config defines how documents anchor to reference rows and which per-column rules run after anchoring. It is stored as JSONB on the dataset, so this endpoint returns whatever was last saved, or null when no config exists yet.
A stored config has two main parts. The anchor block names the key columns and optional narrowing columns used to find the one reference row a document belongs to, plus any regex key_patterns that constrain which markdown tokens are eligible to anchor. The columns map assigns a role to each reference column: anchor, validate, or extract.
This is a read-only endpoint. Use it to inspect the current config before editing, to confirm an auto-configured config was saved, or to drive a config editor in your own UI. The dataset must belong to your tenant.
/v1/reconciliation/config/{referenceDataId}Response
Response fields
Response
{
"config": {
"name": "Carrier reconciliation",
"version": 2,
"anchor": {
"key_columns": ["booking_ref"],
"narrowing_columns": ["carrier_name"],
"key_patterns": { "booking_ref": "^[A-Z]{3}[0-9]{7}$" },
"markdown_scanning": "fallback"
},
"columns": {
"freight_amount": { "role": "validate", "type": "numeric_tolerance", "tolerance": 0.02, "required": true },
"consignee": { "role": "validate", "type": "fuzzy_name", "threshold": 0.85 },
"container_no": { "role": "extract" }
},
"haiku_validation": true
}
}When config is null, the dataset has no saved reconciliation config. You can still run reconciliation by passing an inline config to POST /v1/reconciliation/run, but persisting a config first means auto-configure merges your stored rules on top of its suggestions and keeps anchor behavior consistent across runs.
Errors
Error responses