converter.js
var apiKey, 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 apiKey = $("#apiKey").val().trim(); //Get your API key at https://app.pdf.co/documentation/api 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://api.pdf.co/v1/file/upload/get-presigned-url?name=test.pdf&encrypt=true', type: 'GET', headers: { 'x-api-key': apiKey }, // passing our api key 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('InProgress <img src="ajax-loader.gif" />'); $.ajax({ url: 'https://api.pdf.co/v1/xls/convert/to/' + toType + '?url=' + presignedUrl + '&encrypt=true&inline=' + isInline + '&async=True', type: 'POST', headers: { 'x-api-key': apiKey }, 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://api.pdf.co/v1/job/check?jobid=' + jobId, type: 'GET', headers: { 'x-api-key': apiKey }, // passing our api key success: function (jobResult) { $("#status").html(jobResult.Status + ' <img src="ajax-loader.gif" />'); if (jobResult.Status == "InProgress") { // Check again after 2 seconds setTimeout(checkIfJobIsCompleted(jobId, resultFileUrl), 2000) } else if (jobResult.Status == "Finished") { $("#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); } } } }); }
Click here to get your Free Trial version of the SDK
IMPORTANT:
Cloud API is deprecated and was replaced with more powerful and secure www.PDF.co Web API
CLICK HERE
TO LEARN MORE
ABOUT NEW
www.PDF.co
w/ Web API
On-Premise API Server
Cloud API Server