# Initialization

In order to use any of the SDK functionalities, the application needs to initialize it first, using the credentials provided during the enrollment on our platform (see prerequisites section above).

<pre class="language-swift"><code class="lang-swift"><strong>BiometridFull.getInstance().initialize(apiUrl: BIOMETRIDFULL_API_URL,
</strong>                                       app: BIOMETRIDFULL_APP,
                                       credential: BIOMETRIDFULL_CREDENTIAL,
                                       appUrl: BIOMETRIDFULL_APP_URL,
                                       language: .English,
                                       customHeaders: [:],
                                       callback: self)
</code></pre>

| apiUrl: **String**                    | Url credential provided                 |
| ------------------------------------- | --------------------------------------- |
| app: **String**                       | Application key provided                |
| credential: **String**                | Secret credential provided              |
| appUrl:  **String**                   | App Url                                 |
| language: **Language**                | Language of Full SDK, defaul is English |
| customHeaders: **\[String: String]?** | Custom headers                          |
| callback: **BiometridFullCallback**   | callback                                |

## Implementation example

```swift
import UIKit
import full_sdk_ios_wv
import BiometridStandardSDK

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        
        let BIOMETRIDFULL_API_URL = "https://biometrid.com/"     
        let BIOMETRIDFULL_APP = "b9901"
        let BIOMETRIDFULL_CREDENTIAL = "01"
        let BIOMETRIDFULL_APP_URL = "https://app.biometrid.com/"
        
        BiometridFull.getInstance().initialize(apiUrl: BIOMETRIDFULL_API_URL,
                                       app: BIOMETRIDFULL_APP,
                                       credential: BIOMETRIDFULL_CREDENTIAL,
                                       appUrl: BIOMETRIDFULL_APP_URL,
                                       language: .English,
                                       customHeaders: nil,
                                       callback: self)
    }
}

extension ViewController: BiometridFullCallback {
    
    func initializeCallback(status: Bool, error: Errors?) {
        if let error = error {
            print("Error", error)
        }
        print("Status", status)
    }
      
    func processCreatedCallback(processId: String?) { }
    
    func processFinishedCallback() { }
    
    func interfaceStartedCallback() { }
    
    func interfaceClosedCallback() { }
}
```

## Callback params

| Parameter              | Description            |
| ---------------------- | ---------------------- |
| status: **Bool**       | Method request status  |
| error: **Errors?**     | Errors associated enum |
| processId: **String?** | Id of current process  |
