meta { name: Get Kobo Shelf Books type: http seq: 1 } get { url: {{baseURL}}/api/devices/{{deviceID}}/shelves?shelf={{shelfName}} body: none auth: inherit } headers { Authorization: Bearer {{userToken}} } settings { encodeUrl: true timeout: 0 } docs { ## Get Kobo Shelf Books Get all books on a Kobo device shelf, optionally filter by shelf name. **Method:** GET **Endpoint:** /api/devices/{deviceID}/shelves?shelf={shelfName} **Authentication:** Bearer token **Path Parameters:** - `deviceID` (string): Device UUID **Query Parameters:** - `shelf` (string, optional): Shelf name to filter by. If omitted, returns all shelves. **Response:** - Array of books with: - `id` (string): Book UUID - `title` (string): Book title - `author` (string): Book author - `shelf_name` (string): Name of the shelf - `shelf_position` (number): Position on the shelf - `entitlement_id` (string): Kobo entitlement ID - `revision_id` (string): Kobo revision number **Status Codes:** - 200: Success - 401: Unauthorized - 404: Device not found - 500: Internal server error **Note:** Returns Kobo-specific metadata (entitlement ID, revision number) required for proper Kobo sync operations. }