 
 (defn add-book-to-shelf
   [consumer access-token book-id shelf]
-  (let [add-url "https://www.goodreads.com/shelf/add_to_shelf.xml"
+  (let [add-url (build-url "shelf" "add_to_shelf.xml")
         params {:name shelf
                 :book_id book-id}]
     (make-auth-request-POST consumer

(defn add-book-review
  "Add a book review. Automatically adds book to read shelf."
  [consumer access-token book-id rating & [review-text]]
  (let [review-url "https://www.goodreads.com/review"
        params (merge {:format "xml"
                       :book_id book-id
                       (keyword "review[rating") rating

  "Edit a book review. Automatically sets book to finished
  and adds it to the read shelf, if it wasn't already there."
  [consumer access-token review-id new-rating & [review-text]]
  (let [review-url (build-url "review" (str review-id ".xml"))
        params (merge {:id review-id
                       (keyword "review[rating]") new-rating
                       :finished true
