> For the complete documentation index, see [llms.txt](https://docs.conscent.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.conscent.ai/version-2.0/iam-system-api-documentation.md).

# IAM System API Documentation

The **IAM System API** allows you to manage client dashboard users, including creating, updating, and deleting users with specific permissions and roles. Authentication is done using Basic Auth with **`API_KEY`** and **`API_SECRET`.**

**Endpoints:**

### 1. Create Client Dashboard User

**Endpoint:**<mark style="color:green;">`POST`</mark> `{{BASE_URL}}v2/client/multi-user`

**Description:** Creates a new user with a specified email, password, role, and permissions.

All endpoints require Basic Authentication with the following headers:

**Headers**

<table><thead><tr><th width="305">Name</th><th>Value</th></tr></thead><tbody><tr><td>Content-Type</td><td><code>application/json</code></td></tr><tr><td>Authorization</td><td><code>Basic &#x3C;Base64Encoded(API_KEY:API_SECRET)></code></td></tr></tbody></table>

**Request Body**

```json
{
  "email": "user@example.com",
  "password": "Abc123",
  "permissions": {
    "ignite": true,
    "paywallBuilder": true,
    "popUpBuilder": true,
    "newsLetterBuilder": true,
    "meterBannerBuilder": true,
    "loginSetting": true,
    "manageSubscription": true,
    "audienceSegment": true,
    "journey": false,
    "payments": false,
    "taxation": true,
    "subscriptionPlan": true,
    "manualSubscriptions": true,
    "Checkout": true,
    "micropayments": true,
    "paymentGateway": true,
    "notifications": true,
    "billing": true,
    "documentation": true,
    "ga4": true,
    "export": true,
    "webhooks": true,
    "internalUser": true,
    "pdfManager": true
  },
  "role": "ADMIN"
}

```

**Response**

{% tabs %}
{% tab title="201" %}

```json
201 Created: User created successfully.
```

{% endtab %}
{% endtabs %}

## 2. Update Client Dashboard User Details

**Endpoint:**<mark style="color:green;">`PATCH`</mark> `{{BASE_URL}}v2/client/multi-user/{userId}`

**Description:** Updates an existing user's details, including email, password, role, and permissions.

All endpoints require Basic Authentication with the following headers:

**Headers**

<table><thead><tr><th width="261">Name</th><th>Value</th></tr></thead><tbody><tr><td>Content-Type</td><td><code>application/json</code></td></tr><tr><td>Authorization</td><td><code>Basic &#x3C;Base64Encoded(API_KEY:API_SECRET)></code></td></tr></tbody></table>

**Request Body:** Similar to Create User.

**Response**

{% tabs %}
{% tab title="200" %}

```json
 User updated successfully.
```

{% endtab %}
{% endtabs %}
