Master Data Management API // v2.4.1

Chaos in.
Truth out.

One API call turns duplicate records, conflicting customer profiles, and siloed product catalogs into a single canonical golden record.

For integration architects, data governance leads, and VP Engineering teams surviving three acquisitions' worth of CRM debt.

resolve.api — interactive demo
LIVE
INPUT // RAW PAYLOAD
847 CONFLICTS
// WARNING: 847 conflicts detected
{
"records": [
{
"id": "cust_001a",
"name": "Johnson & Johnson",
"email": "billing@jnj.com",
"phone": null,
"address": "One J&J Plaza, NJ",
"status": "ACTIVE",
"created": "2019-03-14"
},
{
"id": "cust_001b",
"name": "Johnson and Johnson",
"email": "billing@jnj.com",
"phone": "+1-732-524-0400",
"address": "1 Johnson & Johnson Plz",
"status": "active",
"created": "2021-07-02"
},
{
"id": "cust_001c",
"name": "J&J",
"email": null,
"phone": "+17325240400",
"address": null,
"status": "Active",
"crm_source": "Salesforce_Legacy",
"duplicate_flag": true
},
// ... 844 more conflicts
]
}
// WARNING: 847 conflicts detected
{
"records": [
{
"id": "cust_001a",
"name": "Johnson & Johnson",
"email": "billing@jnj.com",
"phone": null,
"address": "One J&J Plaza, NJ",
"status": "ACTIVE",
"created": "2019-03-14"
},
{
"id": "cust_001b",
"name": "Johnson and Johnson",
"email": "billing@jnj.com",
"phone": "+1-732-524-0400",
"address": "1 Johnson & Johnson Plz",
"status": "active",
"created": "2021-07-02"
},
{
"id": "cust_001c",
"name": "J&J",
"email": null,
"phone": "+17325240400",
"address": null,
"status": "Active",
"crm_source": "Salesforce_Legacy",
"duplicate_flag": true
},
// ... 844 more conflicts
]
}
OUTPUT // GOLDEN RECORD

847 conflicting records detected

POST /v1/resolve/merge

awaiting instruction
LATENCY: 1.8sRECORDS IN: 847RECORDS OUT: 1
Problem → Solution Arc

The problems get uglier.
The solutions get shorter.

01 // CUSTOMER DEDUPLICATION
847→1records collapsed
⚠ CONFLICT DETECTED5 sources

The same customer, 847 different ways

Three acquisitions. Five CRMs. Zero agreement on how to spell "Johnson & Johnson." Your compliance board wants a master customer list by Friday. You have 14 million records and no canonical truth.

conflicting values
Johnson & JohnsonSalesforceCONFLICT
Johnson and JohnsonSAP_ERPCONFLICT
J&JHubSpot_LegacyCONFLICT
Johnson&Johnson Inc.NetSuiteCONFLICT
J & JSnowflake_DWCONFLICT
✓ RESOLVEDPOST /v1/resolve/entities/deduplicate

Request

{
  "strategy": "fuzzy_canonical",
  "sources": ["salesforce", "sap", "snowflake"],
  "confidence_threshold": 0.92,
  "output": "golden_record"
}

Response

HTTP 200 · 1.8s
{
  "canonical": "Johnson & Johnson",
  "confidence": 0.9997,
  "merged_count": 847,
  "golden_record_id": "ent_jnj_canonical"
}
02 // PRODUCT CATALOG RECONCILIATION
40KSKUs reconciled
⚠ CONFLICT DETECTED5 sources

SKU-12A in ERP, SKU_12a in e-commerce, 12A in warehouse

Your ERP, your e-commerce platform, and your warehouse management system each invented their own product identifier scheme. Black Friday is in 72 hours. A 40,000-SKU mismatch is blocking your inventory sync.

conflicting values
SKU-12ASAP_ERPCONFLICT
SKU_12aShopifyCONFLICT
12AWMS_WarehouseCONFLICT
PROD-12A-USSalesforce_CPQCONFLICT
item_12a_v2BigCommerceCONFLICT
✓ RESOLVEDPOST /v1/resolve/products/normalize

Request

{
  "catalog_sources": ["sap_erp", "shopify", "wms"],
  "match_on": ["sku_pattern", "description", "barcode"],
  "normalize": true,
  "emit_crosswalk": true
}

Response

HTTP 200 · 0.9s
{
  "canonical_sku": "SKU-12A",
  "crosswalk": {
    "sap_erp": "SKU-12A",
    "shopify": "SKU_12a",
    "wms": "12A"
  },
  "matched_count": 40000
}
03 // COMPLIANCE AUDIT TRAIL
€0in GDPR fines
⚠ CONFLICT DETECTED5 sources

The auditor found 12,000 addresses that don't match. You have 4 days.

GDPR audit. SOX audit. Your compliance board is staring at 12,000 address discrepancies across customer records. The fines start at €20M. You need a defensible lineage report showing exactly which record was merged, when, and why.

conflicting values
221B Baker StreetCRM_PrimaryCONFLICT
221b baker stERP_BillingCONFLICT
221 Baker St, LondonSupport_DeskCONFLICT
⚠ NULLLegacy_DBNULL
Baker Street 221BAcquired_CRMCONFLICT
✓ RESOLVEDGET /v1/resolve/audit/lineage/{record_id}

Request

{
  "record_id": "ent_canonical_00192",
  "include_lineage": true,
  "include_confidence_trace": true,
  "format": "compliance_report"
}

Response

HTTP 200 · 0.3s
{
  "canonical_address": "221B Baker Street, London",
  "lineage": [
    { "source": "CRM_Primary", "merged": "2024-01-15", "confidence": 0.9991 },
    { "source": "ERP_Billing", "merged": "2024-01-15", "confidence": 0.9876 }
  ],
  "audit_hash": "sha256:a1b2c3..."
}
04 // FINAL STATE

No problems remaining

✓ RESOLVED

Single source of truth. One API call.

Lead Generation

Send us your
messiest data.

You've already watched us resolve 847 conflicts in 1.8 seconds. Tell us about your worst data nightmare — we'll show you exactly how Resolve handles it before you sign anything.

Response within 4 business hours from a senior integration engineer

🔒

Your data stays yours — we sign NDA before any data exchange

📊

Free conflict analysis report on your first 100K records

Prefer to evaluate the schema first?

</>Explore API Docs
POST /v1/leads/submit
SECURE
10K100M+

No spam. No auto-demos. A human engineer reads every submission.

API Specification

Built for architects who read
schema before they talk to sales.

Golden Record Schemav2.4.1
interface GoldenRecord {
canonical_idstringStable UUID across all merges
confidencefloatMatch confidence 0.0–1.0
golden_recordbooleanTrue if canonical truth
lineage[]array<Source>Full merge audit trail
sources[]array<string>Contributing system IDs
merged_countintegerRecords collapsed into one
audit_hashstringSHA-256 for compliance sign-off
}

Base URL

https://api.resolve.io/v2

Match Confidence Scores
Name fuzzy match100.0%

Levenshtein + phonetic

Email normalization100.0%

RFC 5321 canonical

Address standardization98.4%

USPS CASS + SERP

Phone E.164 normalization99.1%

libphonenumber

Cross-source dedup99.7%

Blocking + scoring

Native Connectors
SalesforceSAPSnowflakeHubSpotNetSuiteWorkdayDatabricksOraclePostgresBigQuerySalesforceSAPSnowflakeHubSpotNetSuiteWorkdayDatabricksOraclePostgresBigQuery
Audit TrailSOX · GDPR · CCPA ready
GET /v1/audit/lineage/ent_jnj_001
→ 200 OK
{
  "events": [
    { "t": "2026-01-15T02:14:33Z", "op": "MERGE", "sources": 3 },
    { "t": "2026-01-15T02:14:34Z", "op": "CANONICAL_SET", "confidence": 0.9997 }
  ],
  "audit_hash": "sha256:a1b2c3d4..."
}
In Production

From integration architects
who debug at 2 AM.

34%duplicate reduction
"

We had 14 million customer records across four Salesforce orgs after two acquisitions. Resolve collapsed them into 9.2 million canonical entities in 6 hours. The compliance audit that was supposed to take 3 months took 11 days.

MW

Marcus Webb

VP Engineering

Meridian Financial Group

11 daysvs 3 months audit
"

I was the integration architect who had to explain to the board why our CRM had 847 versions of Johnson & Johnson. Resolve gave me a defensible audit trail with SHA-256 hashes on every merge decision. That's what compliance boards actually need.

PA

Priya Anand

Principal Integration Architect

Vertex Systems

40K SKUsin under 2 seconds
"

At 2 AM with a Black Friday inventory sync failing because our ERP and e-commerce platform couldn't agree on SKU format — one POST request to /v1/resolve/products/normalize and 40,000 SKUs reconciled. I actually exhaled.

TR

Tomás Reyes

Director of Data Engineering

Cascade Commerce

2.4B+
Records resolved
99.97%
Avg match confidence
<2s
P99 resolution latency
140+
Production deployments
// final_state: no_conflicts_remaining

Your data conflicts end here.

Stop debugging merge conflicts at 2 AM. Stop explaining to compliance boards why your CRM has 847 versions of the same customer. One API call. One canonical truth.