ByteScout Cloud API Server is the ready to use Web API Server that can be deployed in less than 30 minutes into your own in-house server or into private cloud server. Can store data on in-house local server based storage or in Amazon AWS S3 bucket. Processing data solely on the server using buil-in ByteScout powered engine, no cloud services are used to process your data!.
On-demand (REST Web API) version:
Web API (on-demand version)
On-premise offline SDK for Windows:
60 Day Free Trial (on-premise)
// Please NOTE: In this sample we're assuming Cloud Api Server is hosted at "https://localhost".
// If it's not then please replace this with with your hosting url.
var formData, toType, isInline;
$(document).ready(function () {
$("#resultBlock").hide();
$("#errorBlock").hide();
$("#result").attr("href", '').html('');
});
$(document).on("click", "#submit", function () {
$("#resultBlock").hide();
$("#errorBlock").hide();
$("#inlineOutput").text(''); // inline output div
$("#status").text(''); // status div
formData = $("#form input[type=file]")[0].files[0]; // file to upload
toType = $("#convertType").val(); // output type
isInline = $("#outputType").val() == "inline"; // if we need output as inline content or link to output file
$("#status").html('Requesting presigned url for upload... <img src="ajax-loader.gif" />');
$.ajax({
url: 'https://localhost/file/upload/get-presigned-url?name=test.pdf&encrypt=true',
type: 'GET',
success: function (result) {
if (result['error'] === false) {
var presignedUrl = result['presignedUrl']; // reading provided presigned url to put our content into
$("#status").html('Uploading... <img src="ajax-loader.gif" />');
$.ajax({
url: presignedUrl, // no api key is required to upload file
type: 'PUT',
data: formData,
processData: false,
success: function (result) {
$("#status").html('Processing... <img src="ajax-loader.gif" />');
$.ajax({
url: 'https://localhost/xls/convert/to/' + toType + '?url=' + presignedUrl + '&encrypt=true&inline=' + isInline + '&async=True',
type: 'POST',
success: function (result) {
if (result.error) {
$("#status").text('Error uploading file.');
}
else {
checkIfJobIsCompleted(result.jobId, result.url);
}
}
});
},
error: function () {
$("#status").text('error');
}
});
}
}
});
});
function checkIfJobIsCompleted(jobId, resultFileUrl) {
$.ajax({
url: 'https://localhost/job/check?jobid=' + jobId,
type: 'GET',
success: function (jobResult) {
$("#status").html(jobResult.status + ' <img src="ajax-loader.gif" />');
if (jobResult.status == "working") {
// Check again after 3 seconds
setTimeout(function(){checkIfJobIsCompleted(jobId, resultFileUrl)}, 3000)
}
else if (jobResult.status == "success") {
$("#status").text('Done converting.');
$("#resultBlock").show();
if (isInline && toType != "pdf") {
$.ajax({
url: resultFileUrl,
dataType: 'text',
success: function (respText) {
$("#inlineOutput").text(respText);
}
});
}
else {
$("#result").attr("href", resultFileUrl).html(resultFileUrl);
}
}
}
});
}
See also:
Get Your API Key
See also: