         reducer (fn [so path-id]
                   (update-in so params-key
                              conj {:name     path-id
+                                   :type     :string        ; may add something later to refine this
                                    :in       :path
                                    :required :true}))]
     (reduce reducer swagger-object path-ids)))

        params-key (concat paths-key ["parameters"])]
    (as-> swagger-object %
          (assoc-in % paths-key
                    (medley/remove-vals nil?
                                        {:description  description
                                         :summary      summary
                                         :operation-id (:function endpoint-meta)}))
          (path-params-injector swagger-options % routing-entry params-key)
          (query-params-injector swagger-options % routing-entry params-key)
          (body-params-injector swagger-options % routing-entry params-key)

  Adapter for ring-swagger. Converts an intermediate description of the namespaces
  into a description compatible with the ring-swagger library."
  (:require [schema.core :as s]
            [io.aviso.rook.schema :refer [unwrap-schema]]
            [clojure.string :as str]
            [medley.core :as medley]
            [io.aviso.toolchest.macros :refer [cond-let]]
            [io.aviso.toolchest.collections :refer [pretty-print]]
            [io.aviso.tracker :as t]
            [clojure.tools.logging :as l]
            [io.aviso.rook.utils :as utils])
  (:import [schema.core EnumSchema Maybe]
           [io.aviso.rook.schema IsInstance]))

(defn- remove-nil-vals
  [m]
  (medley/remove-vals nil? m))

(defn- remove-any-keys
  "Removes keys that are equaly to s/Any."
  [m]
  (medley/remove-vals #(= s/Any %) m))

(def default-swagger-skeleton
  "A base skeleton for a Swagger Object (as per the Swagger 2.0 specification), that is further populated from Rook namespace
