Duplicate Resolution Handler
API Contract
REST
/api/v1/duplicate-resolutions
5 endpoints
GET
/api/v1/duplicate-resolutions/api/v1/duplicate-resolutions
List all resolution outcomes
Public
Response Example
{
"data": [
{
"id": "res-4401",
"draft_activity_id": "draft-8812",
"resolution_type": "merge",
"existing_activity_id": "act-2847",
"resolved_by": "coord-12",
"resolved_at": "2026-03-25T11:10:00Z",
"outcome_summary": "Draft merged into existing activity act-2847."
},
{
"id": "res-4402",
"draft_activity_id": "draft-9001",
"resolution_type": "proceed",
"existing_activity_id": null,
"resolved_by": "peer-0091",
"resolved_at": "2026-03-25T12:00:00Z",
"outcome_summary": "Peer chose to proceed despite duplicate flag."
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 2
}
}
GET
/api/v1/duplicate-resolutions/api/v1/duplicate-resolutions/:id
Get a resolution outcome by ID
Public
Response Example
{
"id": "res-4401",
"draft_activity_id": "draft-8812",
"resolution_type": "merge",
"existing_activity_id": "act-2847",
"resolved_by": "coord-12",
"resolved_at": "2026-03-25T11:10:00Z",
"outcome_summary": "Draft merged into existing activity act-2847.",
"merged_fields": {
"notes": "Combined session notes from both records.",
"duration_minutes": 90
}
}
POST
/api/v1/duplicate-resolutions/api/v1/duplicate-resolutions
Create a resolution action
Public
Request Example
{
"draft_activity_id": "draft-8812",
"resolution_type": "merge",
"existing_activity_id": "act-2847",
"override_fields": {
"notes": "Combined session notes from both records.",
"duration_minutes": 90
},
"resolved_by": "coord-12"
}
Response Example
{
"id": "res-4403",
"draft_activity_id": "draft-8812",
"resolution_type": "merge",
"existing_activity_id": "act-2847",
"resolved_by": "coord-12",
"resolved_at": "2026-03-26T13:00:00Z",
"outcome_summary": "Draft merged into existing activity act-2847."
}
PUT
/api/v1/duplicate-resolutions/api/v1/duplicate-resolutions/:id
Update a resolution record
Public
Request Example
{
"resolution_notes": "Coordinator confirmed merge was appropriate.",
"outcome_summary": "Updated: Draft merged, additional session notes combined."
}
Response Example
{
"id": "res-4401",
"draft_activity_id": "draft-8812",
"resolution_type": "merge",
"existing_activity_id": "act-2847",
"resolved_by": "coord-12",
"resolved_at": "2026-03-25T11:10:00Z",
"resolution_notes": "Coordinator confirmed merge was appropriate.",
"outcome_summary": "Updated: Draft merged, additional session notes combined.",
"last_updated_at": "2026-03-26T14:00:00Z"
}
DELETE
/api/v1/duplicate-resolutions/api/v1/duplicate-resolutions/:id
Cancel and remove a resolution record
Public
Response Example
{
"message": "Resolution res-4401 cancelled and removed."
}