   :offset is the index of the first track to return, default is 0.
 
   Example: (get-a-list-of-new-releases {:country \"SE\" :limit 50 :offset 50} \"BQBw-JtC..._7GvA\")"
-  (spotify-api-call client/get (str spotify-api-url "browse/new-releases")))
-
-(def get-a-list-of-categories 
+
+  (api-get "browse/new-releases"))
+
+(def get-a-list-of-categories
   " Takes two arguments, a map m with query parameters and an optional oauth-token t.
   There are no compulsary keys in m, optional keys are :country, :limit and :offset.
   :country is an ISO 3166-1 alpha-2 country code.
   :limit is the maxium number of tracks to return, default is 20.
   :offset is the index of the first track to return, default is 0.
 
-  Example: (get-a-list-of-categories {:country \"SE\" :limit 50 :offset 50} \"BQBw-JtC..._7GvA\")" (spotify-api-call client/get (str spotify-api-url "browse/categories")))
-
-(def get-a-category 
+  Example: (get-a-list-of-categories {:country \"SE\" :limit 50 :offset 50} \"BQBw-JtC..._7GvA\")"
+  (api-get "browse/categories"))
+
+(def get-a-category
   " Takes two arguments, a map m with query parameters and an optional oauth-token t.
   Compulsory key in m is :category_id, optional keys are :country and :locale.
   :category_id has to be a spotify category id.
   :country is an ISO 3166-1 alpha-2 country code.
   :locale is an ISO 639 language code and a ISO 3166-1 alpha-2 country code joined with an underscore.
 
-  Example: (get-a-category {:category_id \"dinner\" :country \"SE\" :locale \"sv_SE\"} \"BQBw-JtC..._7GvA\")" (spotify-api-call client/get (str spotify-api-url "browse/categories/category_id")))
-
-(def get-a-categorys-playlists  
+  Example: (get-a-category {:category_id \"dinner\" :country \"SE\" :locale \"sv_SE\"} \"BQBw-JtC..._7GvA\")"
+  (api-get "browse/categories/category_id"))
+
+(def get-a-categorys-playlists
   " Takes two arguments, a map m with query parameters and an optional oauth-token t.
   Compulsory key in m is :category_id, optional keys are :country, :limit and :offset.
   :category_id has to be a spotify category id.

  :offset is the index of the first track to return, default is 0.
  :market is an ISO 3166-1 alpha-2 country code.

  Example: (get-tracks-of-album {:id \"3XCGFOBqESirxxICswSity\" :market \"SE\" :limit 50 :offset 50} \"BQBw-JtC..._7GvA\")" (spotify-api-call client/get (str spotify-api-url "albums/id/tracks")))

;Artists
(def get-an-artist 
  " Takes two arguments, a map m with query parameters and an optional oauth-token t.
  Compulsory key in m is :id.
  :id has to have the value of an existing artist's id.

  Example: (get-an-artist {:id \"5CE2IfdYZEQGIDsfiRm8SI\"} \"BQBw-JtC..._7GvA\")" (spotify-api-call client/get (str spotify-api-url "artists/id")))

(def get-several-artists  
  " Takes two arguments, a map m with query parameters and an optional oauth-token t.
  Compulsory key in m is :ids.
  :ids has to be a comma separated string of spotify artist ids.

  Example: (get-several-artists {:ids \"1kK2LYgoP3raZNngbb1qMT,2RitCPbwEYyYNw5LkbXTGv\"} \"BQBw-JtC..._7GvA\")" (spotify-api-call client/get (str spotify-api-url "artists")))

(def get-an-artists-albums 
  " Takes two arguments, a map m with query parameters and an optional oauth-token t.
  Compulsory key in m is :id, optional keys are :album_type, :market, :limit and :offset.
  :id has to have the value of an existing artist's id.

  :name is the name for the new playlist.
  :public is set to true if a playlist should be public and false if not.

  Example: (change-a-playlists-details {:user_id \"elkalel\" :playlist_id \"6IIjEBw2BrRXbrSLerA7A6\" :name \"Fantastic playlist\" :public true} \"BQBw-JtC..._7GvA\")"
  (api-put "users/user_id/playlists/playlist_id"))

;Profiles
(def get-a-users-profile
  " Takes two arguments, a map m with query parameters and an optional oauth-token t.
  Compulsory key in m is :user_id.
  :user_id has to be a spotify user id.

  Example: (get-a-users-profile {:user_id \"elkalel\"} \"BQBw-JtC..._7GvA\")"
  (api-get "users/user_id"))

;TODO - what happens when map is not present or nil?
(def get-current-users-profile
  " Takes an oauth-token t.

  Example: (get-current-users-profile {} \"BQBw-JtC..._7GvA\")"
  (api-get "me"))

;Search
(def search
  " Takes two arguments, a map m with query parameters and an optional oauth-token t.
  Compulsory keys in m are :q and :type, optional keys are :market, :limit and :offset.
  :q is the search string.
