Fix all wrong-path artifacts identified by the audit: - Kobo sync endpoints (init/bookmark/markup/sync-from-server/analytics): add missing :token device segment (6 doc files incl. kobo-protocol.md) - Highlights/notes update+delete: add missing /:id media-item prefix - media-items/download_media_item.md: removed (static /uploads route, not an API endpoint; info about the file route is recoverable from OPDS docs) - Bruno: /libraries/visible -> /visibility, /collections/books missing id, /audio/0 -> track_index - operations/troubleshooting.md: same /libraries/visible -> /visibility fix - media-items/get_audio_track.md + get_audio_chapters.md: /audio/0 examples fixed - Deleted monolithic docs/developer/api-reference.md (duplicate of split docs) - Fixed 4 stale entries in docs/developer/api/api-reference.md (split index) Audit re-run: orphan docs 0, orphan Bruno 6 (all scenario files with literal IDs).
1.7 KiB
1.7 KiB
Sync From Server
Status: Coming Soon — Native Kobo sync is not yet supported on real devices; this endpoint is under active development and may change.
Push content and metadata to Kobo device.
Endpoint: POST /api/sync/kobo/:token/sync-from-server
Auth: Required (Device authentication)
Device Authentication
This endpoint requires device authentication (not user JWT). Kobo devices authenticate using their device credentials and access tokens.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| book_ids | array of string | No | Array of ContentIDs to sync |
| full_sync | boolean | No | Whether to perform full sync (default: false) |
Example Request
{
"book_ids": ["content-id-1", "content-id-2"],
"full_sync": false
}
Response (200 OK)
{
"books": [
{
"ContentID": "content-id-1",
"Title": "Book Title",
"Author": "Author Name",
"ISBN": "978-0123456789",
"PublicationDate": "2026-02-08",
"FileSize": 1234567,
"CoverImageId": "cover-id-1",
"Metadata": {
"language": "en",
"publisher": "Publisher Name"
}
}
],
"total": 2
}
Error Responses
| Code | Description |
|---|---|
| 401 | Device authentication failed |
| 404 | Device not found |
Notes
This endpoint pushes library content from the server to the Kobo device. It's called during sync operations to update the device's library catalog.