# auth0

This setup assumes that you have already configured your splice instance to use an Auth0 tenant. Typically this is done as part of setting up your Validator Node.

{% stepper %}
{% step %}

### Create auth0 Application

From the auth0 dashboard add an application for `tradecraft-ui` as a single-page application:

<figure><img src="/files/X5dGq8p4i4ljJd6tnpFU" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/9B74WeUPrdFnAYQ1pLct" alt=""><figcaption></figcaption></figure>

Select the “Settings” tab:

<figure><img src="/files/heRmWAyYySTP5WXuFHje" alt=""><figcaption></figcaption></figure>

Make a note of the "Client ID" shown above, you'll need to put that ID in a config file during the [Container Initialization](/app-documentation/installation/images-and-media.md) step.

Scroll down to "Application URIs" and set the "Allowed Callback URLs" to include the `/oauth/redirect` path at your Tradecraft app hostname, set a logout URL, and save:

<figure><img src="/files/VwkmkOvS7cVZkwIDTmuo" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Create API

Select "APIs" in the left-hand panel. If you have already set up splice this step is probably already complete, but verify that there is an entry for the API audience used by your validator. The default API audience suggested by the splice documentation is: `https://canton.network.global`

<figure><img src="/files/Y2o6HXsVVeFLgQ9geG9E" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Create User

Under "User Management" select "Create User" and enter a unique email address and a non-temporary password:

{% hint style="info" %}
While you technically can use an existing account on the node, it is *highly* recommended not to do so.\
\
Additionally, using the primary party on the node is strictly not allowed.
{% endhint %}

<figure><img src="/files/4kie1707DICAuNI8rXpC" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/CQkHUFrDkDX5p77ytOV1" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
This password will be used in config files for the containers that run the app. If changed via a sign-in password reset request without updating the config, the app will not run properly. For this reason we recommend using an email address that is access restricted to users who understand not to change the password via the sign in UI.
{% endhint %}

Once created edit the "Name" field and name it `tradecraft`

<figure><img src="/files/lRlma7ka6tz9YDx7BXAw" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/JnN9MEecpUJV6xm3fayO" alt=""><figcaption></figcaption></figure>

Login to your validator’s wallet app and press the big “ONBOARD YOURSELF” button to be issued a Party ID, which will be displayed in the top right corner of the wallet UI.

<figure><img src="https://lh3.googleusercontent.com/keep-bbsk/AFgXFlKw2HxebVvZQLNvxLGHgvWf7jDd_pXRfRx-KStBjZcZCT89LDroBBeHqqToYP2QcZF-zfl7Lft8AFv-mwKhbuFPjxGzacPvXfZeLX-_FJnx-z6UGDhZNw=s1009" alt=""><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}


---

# Agent Instructions: 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:

```
GET https://docs.tradecraft.fi/app-documentation/installation/interactive-blocks/auth0.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
