# Get Reading Progress Retrieve reading progress for a specific media item. **Endpoint**: `GET /api/media-items/{media_id}/progress` **Auth**: Required ## Path Parameters | Parameter | Type | Required | Description | |-----------|------|-----------|-------------| | media_id | string | Yes | Media item UUID | ## Request Headers | Header | Type | Required | Description | |--------|------|-----------|-------------| | Authorization | string | Yes | Bearer token | ### Example Request ```http GET /api/media-items/uuid/progress Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... ``` ## Response (200 OK) ```json { "media_item_id": "uuid", "user_id": "uuid", "current_page": 45, "total_pages": 200, "percentage": 0.225, "character_offset": 15432, "epubcfi": "epubcfi(/6/4/2:15)", "chapter": 3, "chapter_progress": 0.5, "last_read_at": "2026-01-31T10:00:00Z", "format_group": "reflowable", "viewport_y": 0.12, "zoom_level": 1.0 } ``` ## Error Responses | Code | Description | |------|-------------| | 401 | Invalid or expired token | | 404 | Media item not found |