# Quick Start

> Pick the integration path that fits where the app runs, register it, and connect it.

## 1. Get Access to the Portal

Registering apps needs the Developer badge, which Aiden gives, or an agent key that holds `apps.manage`. Aiden has both by default. Without one, the [Developer Portal](https://accounts.aidenkt.com/developers) answers that you need the badge.

## 2. Choose a Path

```text
Does the app run on an aidenkt.com origin (for example https://notes.aidenkt.com)?
├─ Yes: use the Sign-In Kit for the button and menu.
│       Does its server need to know who is signed in?
│       ├─ No:  the kit, and /api/whoami from the page, are enough.
│       └─ Yes: also use OpenID Connect (a site's own server never sees the KT session cookie).
└─ No (any other domain, a mobile app, a server, a CLI): use OpenID Connect.
```

| Path | Setup Time | Guide |
| --- | --- | --- |
| Sign-In Kit | About a minute | [Sign-In Kit](/integrate/sign-in-kit/) |
| Read who is signed in from a page | A few lines | [Read Who Is Signed In](/integrate/who-is-signed-in/) |
| OpenID Connect | A standard library and a callback route | [Sign in with KT Accounts](/integrate/openid-connect/) |

## 3. Register the App

Open the [Developer Portal](https://accounts.aidenkt.com/developers), choose **New App** and fill in the name, home page, colour, who sees it, origins and redirect URIs. See [Register an App](/portal/register-an-app/) for every field.

- For the kit, add the site's origin, for example `https://notes.aidenkt.com`, to **Origins**.
- For OpenID Connect, add the exact callback address to **Redirect URIs** and pick the **Client Type**: a server (has a client secret) or a browser or mobile app (PKCE, no secret).

A confidential app's client secret is shown once, when the app is registered. Copy it then.

## 4. Connect It

The app's page in the portal (`/developers/apps/<id>`) shows every snippet filled in for that app: the kit tags with their integrity hashes, the whoami call, the OpenID Connect endpoints, the authorize URL and the code exchange.

## 5. Check It on the Server

What the kit shows or hides is presentation only. Anything that matters must be checked on a server. See [Check Sign-In on a Server](/integrate/server-checks/) and [Sign in with KT Accounts](/integrate/openid-connect/).
