Clean up API documentation files by removing Phase X references: Remove 'API Explorer will be inserted here in Phase X' placeholders from: - 70+ API endpoint documentation files - Authentication endpoints (login, logout, register, refresh) - User endpoints (profile, settings, password) - Device endpoints (registration, sync, shelves) - Library endpoints (CRUD, folders, visibility) - Media endpoints (items, progress, highlights, notes) - Admin endpoints (users, analytics) - Sync endpoints (Kobo, KOReader) - OPDS endpoints - Scanner endpoints - Queue endpoints These placeholders were from planning documents and have no meaning to API consumers. The documentation is now clean and ready for use.
69 lines
1.7 KiB
Markdown
69 lines
1.7 KiB
Markdown
# Update Reading Progress
|
|
|
|
Update reading progress for a media item. This will sync across all devices via WebSocket.
|
|
|
|
**Endpoint**: `PUT /api/media-items/{media_id}/progress`
|
|
**Auth**: Required
|
|
**Content-Type**: `application/json`
|
|
|
|
## Path Parameters
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|-----------|-------------|
|
|
| media_id | string | Yes | Media item UUID |
|
|
|
|
## Request Body
|
|
|
|
| Field | Type | Required | Description |
|
|
|--------|------|-----------|-------------|
|
|
| source | string | Yes | Progress source (e.g., "web", "koreader", "kobo") |
|
|
| location | object | Yes | Location information |
|
|
| location.percentage | float | No | Progress percentage (0-1) |
|
|
| location.epubcfi | string | No | EPUB CFI location |
|
|
| location.character | integer | No | Character offset |
|
|
| location.chapter | integer | No | Chapter number |
|
|
| location.page | integer | No | Current page |
|
|
| location.total_pages | integer | No | Total pages |
|
|
| device_metadata | object | No | Device metadata |
|
|
| device_metadata.device_type | string | No | Device type |
|
|
| device_metadata.user_agent | string | No | User agent string |
|
|
|
|
### Example Request
|
|
|
|
```json
|
|
{
|
|
"source": "web",
|
|
"location": {
|
|
"percentage": 0.45678,
|
|
"epubcfi": "epubcfi(/6/4/2:15)",
|
|
"character": 15432,
|
|
"chapter": 3,
|
|
"page": 89,
|
|
"total_pages": 200
|
|
},
|
|
"device_metadata": {
|
|
"device_type": "web",
|
|
"user_agent": "Mozilla/5.0..."
|
|
}
|
|
}
|
|
```
|
|
|
|
## Response (200 OK)
|
|
|
|
```json
|
|
{
|
|
"sync_status": "success",
|
|
"progress_updated": true,
|
|
"devices_notified": ["device-1", "device-2"],
|
|
"broadcast": true
|
|
}
|
|
```
|
|
|
|
## Error Responses
|
|
|
|
| Code | Description |
|
|
|------|-------------|
|
|
| 400 | Invalid location data |
|
|
| 401 | Invalid or expired token |
|
|
| 404 | Media item not found |
|