# TransloaditKit

[transloadit/transloaditkit](https://github.com/transloadit/transloaditkit)

Es fácil empezar a usar Transloadit en Objective-C y Swift mediante CocoaPods o Carthage y aprovechar la subida y el encoding de archivos en aplicaciones para macOS y iOS.

## Instalación

### CocoaPods

![](/_next/static/media/copy.04p1cju9qekk_.svg?dpl=dpl_3z41v8VuCJJKgtsQfSKB6o2uiSXL)

```ruby
pod 'Transloadit', '~> 3.0'

```

### Swift Package Manager

![](/_next/static/media/copy.04p1cju9qekk_.svg?dpl=dpl_3z41v8VuCJJKgtsQfSKB6o2uiSXL)

```swift
dependencies: [
    .package(url: "https://github.com/transloadit/TransloaditKit", .upToNextMajor(from: "3.0.0"))
]

```

## Uso

Empieza por inicializar `Transloadit`.

![](/_next/static/media/copy.04p1cju9qekk_.svg?dpl=dpl_3z41v8VuCJJKgtsQfSKB6o2uiSXL)

```swift
let credentials = Transloadit.Credentials(key: "SomeKey", secret: "SomeSecret")
let transloadit = Transloadit(credentials: credentials, session: URLSession.shared)

```

### Crea una Assembly

Para crear una `Assembly`, invoca `createAssembly(steps:andUpload:completion)` en `Transloadit`. Este método devuelve un `TransloaditPoller` que puedes usar para consultar periódicamente el `AssemblyStatus` de tu `Assembly`.

![](/_next/static/media/copy.04p1cju9qekk_.svg?dpl=dpl_3z41v8VuCJJKgtsQfSKB6o2uiSXL)

```swift
let resizeStep = Step(
    name: "resize",
    robot: "/image/resize",
    options: [
        "width": 200,
        "height": 100,
        "resize_strategy": "fit",
        "result": true])

let filesToUpload: [URL] = ...
transloadit.createAssembly(steps: [resizeStep], andUpload: filesToUpload) { result in
    switch result {
    case .success(let assembly):
        print("Retrieved \(assembly)")
    case .failure(let error):
        print("Assembly error \(error)")
    }
}.pollAssemblyStatus { result in
    switch result {
    case .success(let assemblyStatus):
        print("Received assemblystatus \(assemblyStatus)")
    case .failure(let error):
        print("Caught polling error \(error)")
    }
}

```

## Documentación

Consulta la documentación completa en [GitHub](https://github.com/transloadit/TransloaditKit#readme).
