Files
bookhoard/docs/developer/api/conflicts/list_conflicts.md
T
john-okeefe bab78c6c85 docs(api): add KOReader sync protocol documentation
- sync_progress.md - POST /api/sync/koreader/progress
- get_metadata.md - GET /api/sync/koreader/metadata/:uuid
- get_library.md - GET /api/sync/koreader/library
- sync_bookmarks.md - POST /api/sync/koreader/bookmarks

KOReader device sync endpoints with device authentication
for progress, metadata, library, and bookmarks
2026-02-08 12:38:50 -05:00

1.6 KiB

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",
      "device_progress": {
        "device_id": "device-uuid",
        "device_name": "My Kobo",
        "percentage": 75,
        "position": 1234,
        "updated_at": "2026-02-08T10:00:00Z"
      },
      "server_progress": {
        "percentage": 50,
        "position": 800,
        "updated_at": "2026-02-08T09:00:00Z"
      },
      "status": "active",
      "created_at": "2026-02-08T10:00:00Z"
    }
  ],
  "total": 5,
  "limit": 10,
  "offset": 0
}

Error Responses

Code Description
401 Invalid or expired token

Try It Out