> For the complete documentation index, see [llms.txt](https://liquiidio.gitbook.io/unity-plugin-suite/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://liquiidio.gitbook.io/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-unityual.md).

# UnityUAL

```
class UniversalAuthenticatorLibrary::UnityUAL
  : public MonoBehaviour
```

## Summary

| Members                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | Descriptions                                                                                                                                          |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| `public bool` [`IsAutologin`](#class_universal_authenticator_library_1_1_unity_u_a_l_1abd51b3c200ab5b64815eba7203156f30)                                                                                                                                                                                                                                                                                                                                                                                                            |                                                                                                                                                       |
| `public` [`Authenticator`](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-authenticator.md) [`ActiveAuthenticator`](#class_universal_authenticator_library_1_1_unity_u_a_l_1ac1bcd85c15c9365f17835e7222ff1502)                                                                                                                                                                                                                                                                            |                                                                                                                                                       |
| `public` [`Chain`](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-chain.md) [`Chain`](#class_universal_authenticator_library_1_1_unity_u_a_l_1ac5ae30619ab2ecd485d62c4a67082190)                                                                                                                                                                                                                                                                                                          |                                                                                                                                                       |
| `public` [`UALOptions`](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-ualoptions.md) [`UalOptions`](#class_universal_authenticator_library_1_1_unity_u_a_l_1a4f4de2df5d9187ce1613ac8072ca0306)                                                                                                                                                                                                                                                                                           |                                                                                                                                                       |
| `public List<` [`Authenticator`](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-authenticator.md)`>` [`Authenticators`](#class_universal_authenticator_library_1_1_unity_u_a_l_1ae557c481fa8c3e51dde178910f0a96cf)                                                                                                                                                                                                                                                                        |                                                                                                                                                       |
| `public` [`Action](#_example_main_view_8cs_1a24e91c56095a0673d92c6eac6e069a3c)< [User`](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-user.md)`>` [`OnUserLogin`](#class_universal_authenticator_library_1_1_unity_u_a_l_1a300ad3fd0063bb50f08edc2efe28f920)                                                                                                                                                                                                                             |                                                                                                                                                       |
| `public` [`UnityUAL`](#class_universal_authenticator_library_1_1_unity_u_a_l_1ae8aa6187c4f35b82bea55b52df9dcef9)`(` [`Chain`](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-chain.md)`chain,` [`UALOptions`](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-ualoptions.md)`ualOptions, List<` [`Authenticator`](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-authenticator.md) `> authenticators)` | #### Parameters                                                                                                                                       |
| `public` [`AuthenticatorResponse`](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-authenticatorresponse.md) [`GetAuthenticators`](#class_universal_authenticator_library_1_1_unity_u_a_l_1a32805bd7ec1f6b56890af4fd5a36f16d)`()`                                                                                                                                                                                                                                                          | Returns an object with a list of initialized Authenticators that returned true for shouldRender() as well as an authenticator that supports autoLogin |
| `public async Task` [`Init`](#class_universal_authenticator_library_1_1_unity_u_a_l_1ad2211bc8cfc2d8c4fe5784b6917e6520)`()`                                                                                                                                                                                                                                                                                                                                                                                                         | Initializes UAL: If a renderConfig was provided and no autologin authenticator is returned it will render the Auth Button and relevant DOM elements.  |
| `protected abstract void` [`CreateUalPanel`](#class_universal_authenticator_library_1_1_unity_u_a_l_1a177c1252275603108b9be9c60dee2a91)`(` [`Authenticator`](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-authenticator.md) `authenticators)`                                                                                                                                                                                                                                           |                                                                                                                                                       |
| `private async Task` [`AttemptSessionLogin`](#class_universal_authenticator_library_1_1_unity_u_a_l_1afb8edc1e3cd649805dfbe54e6fd79688)`(` [`Authenticator`](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-authenticator.md) `availableAuthenticators)`                                                                                                                                                                                                                                  |                                                                                                                                                       |
| `private void` [`ClearStorageKeys`](#class_universal_authenticator_library_1_1_unity_u_a_l_1a74bf10f219ebfa5a39edf8809bf774d2)`()`                                                                                                                                                                                                                                                                                                                                                                                                  |                                                                                                                                                       |

## Members

**`public bool`** [**`IsAutologin`**](#class_universal_authenticator_library_1_1_unity_u_a_l_1abd51b3c200ab5b64815eba7203156f30)

**`public`** [**`Authenticator`**](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-authenticator.md) [**`ActiveAuthenticator`**](#class_universal_authenticator_library_1_1_unity_u_a_l_1ac1bcd85c15c9365f17835e7222ff1502)

**`public`** [**`Chain`**](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-chain.md) [**`Chain`**](#class_universal_authenticator_library_1_1_unity_u_a_l_1ac5ae30619ab2ecd485d62c4a67082190)

**`public`** [**`UALOptions`**](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-ualoptions.md) [**`UalOptions`**](#class_universal_authenticator_library_1_1_unity_u_a_l_1a4f4de2df5d9187ce1613ac8072ca0306)

**`public List<`** [**`Authenticator`**](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-authenticator.md)**`>`** [**`Authenticators`**](#class_universal_authenticator_library_1_1_unity_u_a_l_1ae557c481fa8c3e51dde178910f0a96cf)

**`public`** [**`Action](#_example_main_view_8cs_1a24e91c56095a0673d92c6eac6e069a3c)< [User`**](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-user.md)**`>`** [**`OnUserLogin`**](#class_universal_authenticator_library_1_1_unity_u_a_l_1a300ad3fd0063bb50f08edc2efe28f920)

**`public`** [**`UnityUAL`**](#class_universal_authenticator_library_1_1_unity_u_a_l_1ae8aa6187c4f35b82bea55b52df9dcef9)**`(`** [**`Chain`**](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-chain.md)**`chain,`** [**`UALOptions`**](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-ualoptions.md)**`ualOptions, List<`** [**`Authenticator`**](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-authenticator.md) **`> authenticators)`**

#### Parameters

* `chains` A list of chains the dapp supports.
* `appName` The name of the app using the authenticators
* `authenticators` A list of authenticator apps that the dapp supports.

**`public`** [**`AuthenticatorResponse`**](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-authenticatorresponse.md) [**`GetAuthenticators`**](#class_universal_authenticator_library_1_1_unity_u_a_l_1a32805bd7ec1f6b56890af4fd5a36f16d)**`()`**

Returns an object with a list of initialized Authenticators that returned true for shouldRender() as well as an authenticator that supports autoLogin

**`public async Task`** [**`Init`**](#class_universal_authenticator_library_1_1_unity_u_a_l_1ad2211bc8cfc2d8c4fe5784b6917e6520)**`()`**

Initializes UAL: If a renderConfig was provided and no autologin authenticator is returned it will render the Auth Button and relevant DOM elements.

**`protected abstract void`** [**`CreateUalPanel`**](#class_universal_authenticator_library_1_1_unity_u_a_l_1a177c1252275603108b9be9c60dee2a91)**`(`** [**`Authenticator`**](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-authenticator.md) **`authenticators)`**

**`private async Task`** [**`AttemptSessionLogin`**](#class_universal_authenticator_library_1_1_unity_u_a_l_1afb8edc1e3cd649805dfbe54e6fd79688)**`(`** [**`Authenticator`**](/unity-plugin-suite/universalauthenticatorlibrary/api-docs/universalauthenticatorlibrary-authenticator.md) **`availableAuthenticators)`**

**`private void`** [**`ClearStorageKeys`**](#class_universal_authenticator_library_1_1_unity_u_a_l_1a74bf10f219ebfa5a39edf8809bf774d2)**`()`**
