# Add user (/docs/api-reference/reseller/addUser)

> Create a new child user and organization under the reseller. The new organization is linked to your reseller account automatically.



> **Reseller accounts only.** [Request access](https://omnidim.io/contact-us?reason=partnership\&lock=1).

**POST** `/reseller/users/add`

Create a new child user and organization under the reseller.
The new organization is linked to your reseller account
automatically.

```yaml
operationId: addUser
requestBody:
  required: true
  content:
    application/json:
      schema:
        type: object
        required:
          - name
          - email
          - phone
          - password
        properties:
          name:
            type: string
            description: Full name of the new user.
          email:
            type: string
            format: email
            description: Email address. Also used as the login.
          phone:
            type: string
            description: Phone number including country code (e.g. `+15551234567`).
            example: '+15551234567'
          password:
            type: string
            format: password
            description: Account password for the new user.
          welcome_minutes_to_credit:
            type: integer
            description: Minutes to credit to the new account on signup.
          cost_per_min:
            type: number
            description: >-
              Cost per minute charged to this user (e.g. `0.20`). Must be at least the reseller's
              premium model rate.
            example: 0.2
          concurrent_call_limit:
            type: integer
            description: Maximum number of concurrent calls allowed for this account.
          expiry_date:
            type: string
            format: date
            description: Account expiry date in `YYYY-MM-DD` format (e.g. `2026-12-31`).
          user_currency:
            type: string
            description: >-
              ISO 4217 currency code for the account (e.g. `USD`, `INR`). Defaults to the reseller's
              currency.
            example: USD
      example:
        name: Demo User
        email: demo@example.com
        phone: '+15551234567'
        password: SecurePass123!
        welcome_minutes_to_credit: 50
        cost_per_min: 0.2
        concurrent_call_limit: 2
        expiry_date: '2026-12-31'
        user_currency: USD
responses:
  '200':
    description: User created.
    content:
      application/json:
        schema:
          type: object
          properties:
            success:
              type: boolean
            message:
              type: string
            user_id:
              type: integer
            organization_id:
              type: integer
            organization_name:
              type: string
            organization_balance:
              type: number
            cost_per_min:
              type: number
          example:
            success: true
            message: User and organization created successfully
            user_id: 1234
            organization_id: 9012
            organization_name: Demo User's Organization
            organization_balance: 10
            cost_per_min: 0.2
```

**curl**

```bash
curl -X POST "https://backend.omnidim.io/api/v1/reseller/users/add" \
  -H "Authorization: Bearer $OMNIDIM_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Demo User",
  "email": "demo@example.com",
  "phone": "+15551234567",
  "password": "SecurePass123!",
  "welcome_minutes_to_credit": 50,
  "cost_per_min": 0.2,
  "concurrent_call_limit": 2,
  "expiry_date": "2026-12-31",
  "user_currency": "USD"
}'
```
