> For the complete documentation index, see [llms.txt](https://docs.caf.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.caf.io/caf-sdk/ios/standalone-modules/cafsmartauth/references.md).

# References

### `CafFilterStyle`

| Field         | Description                                           |
| ------------- | ----------------------------------------------------- |
| `natural`     | The original captured selfie.                         |
| `lineDrawing` | A line drawing filter applied to the captured selfie. |

### `CafFaceLivenessSettings`

| Field               | Description                                            |
| ------------------- | ------------------------------------------------------ |
| `faceLivenessToken` | Usage token associated with your CAF account.          |
| `useLoadingScreen`  | Boolean value to enable or disable the loading screen. |
| `filter`            | Filter style to apply to the captured selfie.          |

### `CafSmartAuthError`

The `CafSmartAuthError` enum represents various types of errors that may occur in the SDK:

| Error                | Description                                                               |
| -------------------- | ------------------------------------------------------------------------- |
| `PermissionReason`   | Some mandatory permission is missing.                                     |
| `AvailabilityReason` | CafSmartAuth is not available for use.                                    |
| `NetworkReason`      | Internet connection failure.                                              |
| `ServerReason`       | When a request receives a failure status code.                            |
| `SecurityReason`     | The SDK cannot be started due to a security-related issue.                |
| `StorageReason`      | There is insufficient space in the internal storage of the user's device. |
| `PolicyReason`       | A policy being used is not supported by the SDK.                          |
| `GetLocationReason`  | Error retrieving the user's location.                                     |
| `TerminateByUser`    | Process was terminated by the user.                                       |

### `CafFailureType`

The `CafFailureType` enum represents detailed feedback codes for liveness failures:

| Enum value        | Description                                                                                | GPA | LA |
| ----------------- | ------------------------------------------------------------------------------------------ | --- | -- |
| `unknown`         | Try again                                                                                  | ✅   | ❌  |
| `tooMuchMovement` | Keep still                                                                                 | ✅   | ❌  |
| `tooBright`       | Move somewhere darker                                                                      | ✅   | ❌  |
| `tooDark`         | Move somewhere brighter                                                                    | ✅   | ❌  |
| `misalignedFace`  | Keep your face in the oval                                                                 | ✅   | ❌  |
| `faceTooFar`      | Move your face closer to the screen                                                        | ✅   | ❌  |
| `faceTooClose`    | Move your face farther from the screen                                                     | ✅   | ❌  |
| `sunglasses`      | Remove sunglasses                                                                          | ✅   | ❌  |
| `systemError`     | System Error                                                                               | ⚠️  | ✅  |
| `rejected`        | Transaction could not be completed                                                         | ⚠️  | ✅  |
| `faceNotFound`    | Align your face in the oval and then try to keep still                                     | ⚠️  | ✅  |
| `obscuredFace`    | Make sure your whole face is visible and remove any accessories that might cover your face | ✅   | ✅  |
| `timeout`         | System timeout                                                                             | ⚠️  | ✅  |
| `eyewear`         | Remove your eyewear                                                                        | ⚠️  | ✅  |
| `multipleFaces`   | Ensure only one person is visible                                                          | ✅   | ✅  |
| `eyesClosed`      | Make sure your eyes are open                                                               | ✅   | ✅  |
| `userNotFound`    | Transaction could not be completed                                                         | ⚠️  | ✅  |
| `lightingIssues`  | Make sure your face is well lit and free from glare                                        | ⚠️  | ✅  |
| `framesBlurry`    | Align your face in the oval and then try to keep still                                     | ⚠️  | ✅  |
| `deviceIssue`     | Try a different device                                                                     | ⚠️  | ✅  |
| `motionIssue`     | Align your face in the oval and then try to keep still                                     | ⚠️  | ✅  |
| `backgroundIssue` | Move to a different location with a neutral background                                     | ⚠️  | ✅  |
| `deviceRestart`   | Please restart your device and try again                                                   | ⚠️  | ✅  |
| `processingFault` | Please try again                                                                           | ⚠️  | ✅  |

Key: ✅ = will be returned, ❌ = will not be returned, ⚠️ = may be returned in the future

This section provides a reference to the main configurable properties and potential errors for the *CafSmartAuth* SDK on iOS.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.caf.io/caf-sdk/ios/standalone-modules/cafsmartauth/references.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
