diff --git a/.gitignore b/.gitignore
index f43228c50fa0456f9ec9f74e33377623345558d0..13f3b3cebe1cf56cbb554b22b76f5002cd59b7b6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -39,3 +39,4 @@ bin/release/aws-eb/metabase-aws-eb.zip
 *.sqlite
 /reset-password-artifacts
 /.env
+/npm-debug.log
diff --git a/src/metabase/integrations/slack.clj b/src/metabase/integrations/slack.clj
index f06230b7bd608b1e97569253ea60ae094e72a2da..2896513644c8669142f8ea51725ed0baf57a2338 100644
--- a/src/metabase/integrations/slack.clj
+++ b/src/metabase/integrations/slack.clj
@@ -108,10 +108,10 @@
   [file filename channels]
   {:pre [(string? filename)
          (string? channels)]}
-  (let [response (http/post (str slack-api-baseurl "/files.upload") {:multipart [["token" (slack-token)]
-                                                                                 ["file" file]
-                                                                                 ["filename" filename]
-                                                                                 ["channels" channels]]
+  (let [response (http/post (str slack-api-baseurl "/files.upload") {:multipart [{:name "token",    :content (slack-token)}
+                                                                                 {:name "file",     :content file}
+                                                                                 {:name "filename", :content filename}
+                                                                                 {:name "channels", :content channels}]
                                                                      :as :json})]
     (if (= 200 (:status response))
       (get-in (:body response) [:file :url_private])