Files
bookhoard/docs/developer/api/conflicts/bulk_dismiss_conflicts.md
T
John O'Keefe eacc33bfac docs(conflicts,queue): Beam WO5 batch — 13 endpoints backfilled, registry pinned
Beam added frontmatter + provenance + labeled examples to the 7 conflict and
6 queue docs, fixing real field drift on the way (resolve response keys,
bulk result shape, dismiss-all deleted count, queue stats counts).

Claude registry verification found TWO Beam catches of Claude's own draft:
- queue routes use :device_id / :item_id params (registry first draft said :id)
- resolve_conflict DOES take a body (ConflictResolutionRequest) — registry
  first draft said nil
Both fixed; gate then surfaced one real Beam defect: example-request used a
nonexistent "resolution" field in resolve + bulk-resolve (real contract:
winner=<source|manual> with required manual_data for manual; strategy=
most_recent|highest_progress|manual). Fixed in the docs.

Pinned by type: ConflictListResponse, ConflictDetailResponse,
ConflictResolveResponse, BulkResolveRequest/Response, QueueStatsResponse,
ConflictResolutionRequest. dismiss-all deleted is an int count.
2026-10-24 15:37:45 -04:00

51 lines
1.0 KiB
Markdown

---
method: POST
path: /api/conflicts/bulk-dismiss
auth: jwt
area: conflicts
---
<!-- source: internal/handlers/conflicts.go:789 ConflictHandler.BulkDismissConflicts -->
# Bulk Dismiss Conflicts
Dismiss multiple conflicts at once.
**Endpoint**: `POST /api/conflicts/bulk-dismiss`
**Auth**: Required
**Content-Type**: `application/json`
## Request Body
| Field | Type | Required | Description |
| ------------ | ------------- | -------- | ---------------------------------- |
| conflict_ids | array of UUID | Yes | Array of conflict UUIDs to dismiss |
### Example Request
```json example-request
{
"conflict_ids": [
"550e8400-e29b-41d4-a716-446655440000",
"660e8400-e29b-41d4-a716-446655440001"
]
}
```
## Response (200 OK)
```json example-response
{
"results": [],
"total": 2,
"success": 2,
"failed": 0
}
```
## Error Responses
| Code | Description |
| ---- | ------------------------ |
| 400 | Invalid request body |
| 401 | Invalid or expired token |