---
title: "ListBooks"
method: GET
path: "/v1/shelves/{shelf}/books"
tags: ["LibraryService"]
---

# ListBooks

`GET /v1/shelves/{shelf}/books`

Lists books in a shelf. The order is unspecified but deterministic. Newly
 created books will not necessarily be added to the end of this list.
 Returns NOT_FOUND if the shelf does not exist.

## Path parameters

- `shelf` string, required

## Query parameters

- `page_size` integer
- `page_token` string

## Response `200`

OK

- ListBooksResponse — Response message for LibraryService.ListBooks.
  - `books` Book[] — The list of books.
    - `name` string, required — The resource name of the book. Book names have the form `shelves/{shelf_id}/books/{book_id}`. The name is ignored when creating a book.
    - `author` string — The name of the book author.
    - `title` string — The title of the book.
    - `read` boolean — Value indicating whether the book has been read.
    - `borrow_time` string, date-time — The previous borrowing timestamp.
    - `created_at` string, date-time — The creation date and time.
    - `updated_at` string, date-time — The last update date and time.
  - `next_page_token` string — A token to retrieve next page of results. Pass this value in the [ListBooksRequest.page_token][google.example.library.v1.ListBooksRequest.page_token] field in the subsequent call to `ListBooks` method to retrieve the next page of results.

## Other responses

- `default` — Default error response

---

[API](https://skmtc.net/kollalabs/apis/libraryservice-api.md) · [All operations](https://skmtc.net/kollalabs/apis/libraryservice-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/kollalabs/libraryservice-api/revisions/b3518c94ac37/schema)
