 
   :post!
   (fn [{request :request}]
-    (let [entity        (decode-body request)
+    (let [body          (-> request :body)
+          entity        (-> body read-json-body ->shallow-kebab-map)
           project-id    (-> entity :project-id)
           property-code (-> entity :property-code)]
       (when (and project-id property-code)

  :known-content-type? #{"application/json"}
  :authorized? (authorized? querier :measurement)

  :post! (fn [{{{:keys [device-id]} :route-params :as request} :request}]
           (let [topic (get-in queue ["measurements"])]
             (doseq [measurement (:measurements (decode-body request))]
               (let [t        (db-timestamp (get measurement "timestamp"))
                     m2       {:device-id device-id
                               :type (get measurement "type")

                                                    :name name}))]
      {::item item}
      #_(throw (ex-info (format "Cannot find item of id %s")))))
  :post! (fn [{{body :body {:keys [entity-id name]} :route-params} :request}]
           (let [{:keys [members name]} (-> body read-edn-body ->shallow-kebab-map)
                 ds {:entity_id entity-id
                     :name name
                     :members (string/join \, members)}]
