Apr 13, 2015

Swift Framework for iOS and OS X

Today we are releasing the initial version of our API Wrapper for Swift. As we are using it in our iOS App for CloudConvert we thought it makes sense to publish it.

The following code snippet shows how easily it can be used. Also, we published a complete XCode Example project in the repository.

import CloudConvert
 
CloudConvert.apiKey = "your_api_key"
 
let inputURL = NSBundle.mainBundle().URLForResource("file",withExtension: "png")!
let outputURL = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask)[0] as? NSURL
 
CloudConvert.convert([
                    "inputformat": "png",
                    "outputformat" : "pdf",
                    "input" : "upload",
                    "file": inputURL,
                    "download": outputURL
                ],
                progressHandler: { (step, percent, message) -> Void in
                    println(step! + " " + percent!.description + "%: " + message!)
                },
                completionHandler: { (path, error) -> Void in
                    if(error != nil) {
                        println("failed: " + error!.description)
                    } else {
                        println("done! output file saved to: " + path!.description)
                    }   
            })

We are looking forward to see the awesome apps you create using it!


Apr 8, 2015

2,000,000 users

We’re very happy to announce that we’ve recently had our 2 millionth sign up. We want to take the opportunity and share some interesting numbers with you:

  • 400,000 of our users were active within the last 30 days - 20,000 within the last 24h.
  • We are converting 100,000 files a day and raising. This is 1,15 files per second!
  • About half of the conversions are done by third party apps using our API.
  • All in all we've converted 15 million files with a total size of 200TB.

Thanks to all of you!


Mar 11, 2015

Official node.js API Wrapper

As announced we published the official node.js API Wrapper.

var fs = require('fs');
var cloudconvert = new (require('cloudconvert'))('your_api_key');
 
cloudconvert.convert({
    inputformat: 'png',
    outputformat: 'jpg',
    file: fs.createReadStream('tests/input.png'),
    converteroptions: {
        quality : 75,
    }
}).on('error', function(err) {
    console.error('Failed: ' + err);
}).on('finished', function(data) {
    console.log('Done: ' + data.message);
    this.pipe(fs.createWriteStream('out.jpg'));
}).on('downloaded', function(destination) {
    console.log('Downloaded to: ' + destination.path);
});

Mar 8, 2015

Rewritten PHP API Wrapper

Because our PHP Api wrapper was a bit dusty we decided to rewrite it. You can find it now on GitHub. With the new one you can do cool stuff like this:

$api = new Api("your_api_key");
$api->convert([
        'inputformat' => 'pdf',
        'outputformat' => 'jpg',
        'converteroptions' => [
            'page_range' => '1-3',
        ],
        'input' => 'upload',
        'file' => fopen('./tests/input.pdf', 'r'),
    ])
    ->wait()
    ->downloadAll('./output/');
?>

By the way, an official node-js API wrappper is also in the works!


Feb 1, 2015

Changes in Default Behaviour for File Storage

CloudConvert is made for converting files and is not a file storage provider. Because of this we had to do a little change in the API default behaviour. Up to now all input and output files of the conversions were stored until the conversion was deleted (automatically after 24h). This caused some problems for us: We had to store TB of files nobody used any more: In most cases the output files were already download or saved on Google Drive / S3 / FTP and there was no need to keep them on our servers any more.

To handle this problem we changed the API default behaviour to the following:

  • Files are automatically deleted after the first download of the output file
  • Files are automatically deleted if they were stored on some output provider like Google Drive or S3

In 99% of all cases this fits for our API users and the change does not require any changes of your API implementations. Nevertheless there are cases in which you relay on the longer storage of the output files:

  • If you need to download the output file multiple times
  • If you want to do multiple conversions of the same file

For these cases we added the new save parameter. If you set this parameter you will get the old behaviour back: All files are stored until the conversion is deleted.


Dec 8, 2014

OneDrive Integration

Good news for OneDrive users out there: Microsoft OneDrive is now integrated the same way as Google Drive or Dropbox. Now you can open files from OneDrive, convert them using CloudConvert and save them to your OneDrive again without downloading them to your PC!