Resolve identity conflicts

POSThttps://app.speybooks.com/api/v1/contact-imports/{id}/resolve

Submit user decisions for identity merge conflicts. Each resolution either links (merge), splits (keep separate), or skips a node for a given conflict group.

Resolutions re-run the identity resolution with the user's decisions applied. If conflicts remain afterwards, the import stays in processing. Once all conflicts are resolved, the status moves to pending (ready to confirm).

Path parameters

idstringrequired
Data import ID (e.g. dimp_1). Must be in processing status.

Body parameters

resolutionsarray<object>required
One or more resolution actions. link merges two node IDs, split keeps them separate, skip excludes a node.
Show child parameters
linkarray<string>optional
Two node IDs to force-merge (e.g. ["row_0", "ledger_5"]).
min items: 2 · max items: 2
skipstringoptional
Node ID to exclude from import (e.g. "row_3").
splitarray<string>optional
Two node IDs to keep separate.
min items: 2 · max items: 2

Response

200Resolutions applied, DSU re-run. Returns updated stats and whether conflicts remain. If hasConflicts is false, status advances to pending (ready for confirm).
Show response fields
hasConflictsboolean
importIdstring
skippedinteger
statsobject
Show child attributes
conflictsinteger
createsinteger
mergesinteger
skipsinteger

Error codes

400Empty or missing resolutions array.
404Import not found or not a contacts import.
409Import is not in processing status (conflicts not awaiting resolution).