## Documentation

- About
- Read First
  - What is IdentityServer
  - Installation Scenarios
- Migrations
- Bootstrapping
- Configuration & Integration
  - AdminUI Settings
  - Configuring AdminUI
  - Configuring AdminUI (NuGet)
  - Integrating with Identity Server
  - Integrating with Identity Server Custom Schema
  - Integrating with Quickstarts
  - Enabling Logging
- Installation
  - IIS
  - Azure
    - Install in Azure
    - Create Azure Web App
  - Docker
  - NuGet
- Custom Database Connections
- Custom Identity Store
  - Overview
  - Partial Implementation
  - Full Implementation
  - Tenancy With Entity Framework
  - NoSql Implementation (MongoDB)
- Custom CSP
- Users
  - Searching for Users
  - Adding Users
  - Editing Users
  - Deleting Users
  - Merge Users
  - Set User Password
  - Session Management
  - User Reports
  - Bulk User Import
- Roles
  - Creating Roles
  - Managing Roles
  - Managing Users in a Role
  - Managing Role Claims
- Claim Types
- Clients
  - Searching for Clients
  - Adding Clients
  - Adding a SAML Client
  - Adding a WS-Fed Client
  - Editing Clients
  - Deleting Clients
  - Clone Client
- Import and Export
  - Exporting Clients
  - Importing Clients
  - Importing Client Configuration with Secrets
  - Importing SAML Clients with Certificates
  - Import and Export Via the API
- Dynamic Authentication Providers
  - What is Dynamic Authentication
  - Enabling or disabling Dynamic Authentication
  - Add a Dynamic Provider
    - First Steps
    - Adding OIDC Provider
    - Adding SAML Provider
  - Edit a Dynamic Provider
    - Accessing edit view
    - Editing a OIDC Provider
    - Editing a SAML Provider
  - Deleting a Provider
  - Searching for Provider
- Resources
  - Searching for Resources
  - Creating Resources
  - Editing resources
- Webhooks
  - Webhooks
  - Endpoint Configuration
- MCP
  - Overview
  - Default Server Prompt Instructions
- User Settings Endpoints
- Access Policy
- Keys
- Auditing
- FAQs
- Troubleshooting
  - Unable to start AdminUI
  - Unable to contact IdentityServer
  - Unable to contact API
  - Unable to log in

### Endpoint Configuration

- -Configuration
- -Endpoint Requirements
- -Password Reset, Reset MFA and User Registration Endpoint Requirements
- -Bulk User Registration Endpoint Requirements
- -Delete Session Webhook Endpoint Requirements
- -Response
- -Debugging

## Configuration

You must create an endpoint that is secured and authenticated by your IdentityServer that uses the scope you have selected in the webhook configuration page for authorization.

Once you have your endpoint configured, you can enable the webhook and set the config setting with the AdminUI API config with Url for your endpoint. If this field is set then on successful User creation this webhook will be triggered.

## Endpoint Requirements

### Password Reset, Reset MFA and User Registration Endpoint Requirements

AdminUI expects these endpoints to meet the following requirements:

- Accept POST
- Accept JSON
- Accept an email, username and subjectid in the body

##### Body

    {
        "subjectid": "string"
        "email": "string",
        "username": "string"
    }

### Bulk User Registration Endpoint Requirements

AdminUI expects this endpoint to meet the following requirements:

- Accept POST
- Accept JSON
- Accept a body with a field called 'users' that contains an array of objects. The objests in this array contain an email, username and subjectid

##### Body

    {
           "users": [
            {
                "subjectid": "string"
                "email": "string",
                "username": "string"
            }
       ]
    }

### Delete Session Webhook Endpoint Requirements

AdminUI expects the delete session endpoint to meet the following requirements:

- Accept DELETE
- Accept JSON
- Accept an sessionId as a route parameter. E.g: `https://webhookhost/1234-5678`

## Response

On a successful request a 200 OK response should be returned.

## Debugging

If the call made to the endpoint returns anything other than a success code, if logging is correctly configured, a error will be logged by the API containing the returned status code.

Previous Next