Capability · Layouts
Reuse last mapping, and catch drift.
Every confirmed mapping is cached by a fingerprint of its header row, so a recurring import is one-click reuse with zero AI. The same fingerprint detects schema drift before it breaks your pipeline.
What you get
Built for regulated workloads
The same file lands every week. There’s no reason to re-run the cascade — let alone the AI — when the header row is identical to one you’ve already confirmed. AdaptivMapr fingerprints every confirmed mapping with a SHA-256 hash of its normalized header row, so a repeat import is one-click “reuse last mapping” with zero AI. The very same fingerprint powers deterministic schema-drift detection: when a known source shows up with a new field set, you hear about it before the pipeline breaks.
Catch schema changes early
Workspace-scoped, no leakage
Recorded on commit
Try it
A real call, end to end
Fingerprint the header row on lookup to reuse a confirmed mapping, or on drift to compare against the last known layout for a source.
- The fingerprint is a SHA-256 of the normalized header row — order-insensitive enough to flag pure reorders via reordered_only.
- Both reuse and drift are deterministic and call no LLM — they add no token cost on every import.
- Layouts are workspace-scoped; there is no cross-tenant sharing.
# reuse — does this exact header row already have a confirmed mapping?
curl https://api.adaptivmapr.com/v1/layouts/lookup \
-H "Authorization: Bearer $MAPR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "headers": ["MRN", "Given", "Surname", "DOB"] }'
# drift — has the field set for this known source changed?
curl https://api.adaptivmapr.com/v1/layouts/drift \
-H "Authorization: Bearer $MAPR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "template": "patient_demographics",
"headers": ["MRN", "Given", "Surname", "DOB", "Gender"] }'# lookup → the stored mapping, reusable with one click
{ "match": true, "fingerprint": "b91c…", "mapping": [ … ] }
# drift → a new field appeared since the last confirmed layout
{ "status": "drift",
"added": ["Gender"], "removed": [], "common": ["MRN","Given","Surname","DOB"],
"reordered_only": false }FAQ
Common questions
Ready when you are
Put layout reuse & drift in production — without shipping raw records.
Spin up a key in minutes. Top up a $10 prepaid wallet — every map is a few tokens.