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.
1.7 KiB
1.7 KiB
method, path, auth, area
| method | path | auth | area |
|---|---|---|---|
| GET | /api/conflicts | jwt | conflicts |
List Conflicts
List all sync conflicts for the current user.
Endpoint: GET /api/conflicts
Auth: Required
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| status | string | No | Filter by status (active, resolved, dismissed) |
| media_item_id | string (UUID) | No | Filter by media item |
| limit | integer | No | Maximum number of conflicts to return (default: 50) |
| offset | integer | No | Number of conflicts to skip (default: 0) |
Request Headers
| Header | Type | Required | Description |
|---|---|---|---|
| Authorization | string | Yes | Bearer token |
Example Request
GET /api/conflicts?status=active&limit=10
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Response (200 OK)
{
"conflicts": [
{
"id": "uuid",
"media_item_id": "book-uuid",
"media_item_title": "Sample Book",
"conflict_type": "progress",
"conflict_data": {},
"resolution_status": "unresolved",
"created_at": "2026-02-08T10:00:00Z"
}
],
"total": 5,
"unresolved": 5
}
Error Responses
| Code | Description |
|---|---|
| 401 | Invalid or expired token |