Latest 1.0.0
License MIT
Platforms ios 8.0, osx 10.10, requires ARC
Dependencies TUSKit, Arcane

TransloaditKit SDK Build Status Version License Platform

An iOS and MacOS integration for Transloadit‘s file
uploading and encoding service.


Transloadit is a service that helps you handle file
uploads, resize, crop and watermark your images, make GIFs, transcode your
videos, extract thumbnails, generate audio waveforms, and so much more. In
short, Transloadit is the Swiss Army Knife for your

This is an iOS and MacOS SDK to make it easy to talk to the
Transloadit REST API.


Inside your podfile add,

pod 'TransloaditKit', git: ''

If there are no errors, you can start using the pod.


Import TransloaditKit


#import <TransloaditKit/Transloadit.h>


import Arcane
import TransloaditKit

Define your blocks

static TransloaditUploadProgressBlock progressBlock = ^(int64_t bytesWritten, int64_t bytesTotal){
    // Update your progress bar here
    NSLog(@"progress: %llu / %llu", (unsigned long long)bytesWritten, (unsigned long long)bytesTotal);

static TransloaditUploadResultBlock resultBlock = ^(NSURL* fileURL){
    // Use the upload url
    NSLog(@"url: %@", fileURL);

static TransloaditUploadFailureBlock failureBlock = ^(NSError* error){
    // Handle the error
    NSLog(@"error: %@", error);

Setup TransloaditKit

- (void)viewDidLoad {
    [super viewDidLoad];
    transloadit = [[Transloadit alloc] initWithKey:@"YOUR_PUBLIC_KEY" andSecret:@"YOUR_SECRET_KIT"];
    // Do any additional setup after loading the view, typically from a nib.

Create an assembly and upload

        NSMutableArray<Step *> *steps = [[NSMutableArray alloc] init];

        //MARK: A Sample step
        Step *step1 = [[Step alloc] initWithKey:@"encode"];
        [step1 setValue:@"/image/resize" forOption:@"robot"];

        // Add the step to the array
        [steps addObject:step1];

        //MARK: Create an assembly with steps
        Assembly *TestAssemblyWithSteps = [[Assembly alloc] initWithSteps:steps andNumberOfFiles:1];
        [TestAssemblyWithSteps addFile:fileUrl];
        [TestAssemblyWithSteps setNotify_url:@""];

        //MARK: Start The Assembly
        [transloadit createAssembly:TestAssemblyWithSteps];

        transloadit.completionBlock = ^(NSDictionary* completionDictionary){

            [TestAssemblyWithSteps setUrlString:[completionDictionary valueForKey:@"assembly_ssl_url"]];
            [transloadit invokeAssembly:TestAssemblyWithSteps];


Download the GitHub repo and open the example project


We’d be happy to accept pull requests. If you plan on working on something big, please first drop us a line!


The SDK is written in Objective-C for both iOS and MacOS.


Releasing a new version to CocoaPods can be done via CocoaPods Trunk:

  • Bump the version inside the Transloadit.podspec
  • Save a release commit with the updated version in Git
  • Push a tag to Github
  • Publish to Cocoapods with Trunk

To Do

  • Check for wait is true on assembly status



Contributions from:


MIT Licensed.

Latest podspec

    "name": "Transloadit",
    "version": "1.0.0",
    "summary": "An iOS and MacOS SDK for Transloadit.",
    "description": "TODO: Add long description of the pod here.",
    "homepage": "",
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    "authors": {
        "Mark R. Masterson": "[email protected]"
    "source": {
        "git": "",
        "tag": "1.0.0"
    "platforms": {
        "ios": "8.0",
        "osx": "10.10"
    "requires_arc": true,
    "source_files": "Transloadit/Classes/**/*",
    "dependencies": {
        "TUSKit": [],
        "Arcane": []
    "pushed_with_swift_version": "3.0"

Pin It on Pinterest

Share This