REST API pregunta sobre cómo manejar las colecciones de la manera más efectiva posible sin dejar de cumplir con los principios REST

Soy bastante nuevo en REST, pero hasta donde tengo entendido, entiendo que las siguientes URL se ajustan a los principios de REST. Donde los recursos se presentan de la siguiente manera:

/user/<username>/library/book/<id>/tags
          ^         ^           ^   ^
          |---------|-----------|---|- user resource with username as a variable
                    |-----------|---|- many to one collection (books)
                                |---|- book id 
                                    |- many to one collection (tags)


GET /user/dave/library/book             //retrieves a list of books id's
GET /user/dave/library/book/1           //retrieves info on book id=1
GET /user/dave/library/book/1/tags      //retrieves tags collection (book id=1)

Sin embargo, ¿cómo se podría optimizar este ejemplo de API? Digamos, por ejemplo, que tengo 10K libros en mi biblioteca y quiero obtener los detalles de cada libro en mi biblioteca. realmente debería forzar una llamada http a/library/book/<id> por cada identificación dada en/library/book? ¿O debería habilitar múltiples ID's como parámetros? @/library/book/<id1>,<id2>... y ¿te gusta buscar en masa con 100 ID a la vez?

¿Qué dicen los principios REST sobre este tipo de situación? ¿Y cuál es su opinió

Gracias de nuevo

Respuestas a la pregunta(4)

Su respuesta a la pregunta