try to use bytesout like this :
var https = require("https");
var path = require("path");
var fs = require("fs");
const API_KEY = "***********************************";
const SourceFiles = [
"https://s3-us-west-2.amazonaws.com/bytescout-com/files/demo-files/cloud-api/pdf-merge/sample1.pdf",
"https://s3-us-west-2.amazonaws.com/bytescout-com/files/demo-files/cloud-api/pdf-merge/sample2.pdf"
];
const DestinationFile = "./result.pdf";
var queryPath = `/v1/pdf/merge?name=${path.basename(DestinationFile)}&url=${SourceFiles.join(",")}`;
var reqOptions = {
host: "bytescout.io",
path: encodeURI(queryPath),
headers: {
"x-api-key": API_KEY
}
};
https.get(reqOptions, (response) => {
response.on("data", (d) => {
var data = JSON.parse(d)
if (data.error == false) {
var file = fs.createWriteStream(DestinationFile);
https.get(data.url, (response2) => {
response2.pipe(file)
.on("close", () => {
console.log(`Generated PDF file saved as "${DestinationFile}" file.`);
});
});
}
else {
console.log(data.message);
}
});
}).on("error", (e) => {
console.log(e);
});