遅ればせながら、以前 Node.js 用のサードパーティ製 Discourse API を書きました。
このライブラリを使用すると、簡単にアップロードを作成できます。次のようにします。
const { DiscourseApi } = require("node-discourse-api");
const api = new DiscourseApi("https://discourse.example.com");
api.options.api_username = "API_USERNAME";
api.options.api_key = "API_KEY";
api.createUpload(file_path_or_buffer, { filename: "filename" })
(注意: このライブラリは完全ではありません)