---
title: "Return cPanel account's Subaccounts"
method: GET
path: "/UserManager/list_users"
tags: ["UserManager", "Subaccount Management"]
---

# Return cPanel account's Subaccounts

`GET /UserManager/list_users`

This function lists the cPanel account's Subaccounts.

## Query parameters

- `flat` 0 | 1

## Response `200`

HTTP Request was successful.

- object
  - `apiversion` integer — The version of the API.
  - `func` string — The name of the method called.
  - `module` string — The name of the module called.
  - `result` object
    - `data` object[]
      - `alternate_email` string, email — An alternate email address for the subaccount's user.
      - `avatar_url` string, url — The user's subaccount profile photo.
      - `can_delete` 0 | 1 — Whether the cPanel account user can delete the subaccount. * `1` - Can delete. * `0` - **Cannot** delete.
      - `can_set_password` 0 | 1 — Whether the cPanel account user can change the subaccount's password. * `1` - Can change. * `0` - **Cannot** change. **Note:** The function returns a `0` value for subaccounts that inherit their password from the cPanel account.
      - `can_set_quota` 0 | 1 — Whether the cPanel account user can change the subaccount's disk usage quota. * `1` - Can change. * `0` - **Cannot** change.
      - `dismissed` 0 | 1 — Whether the cPanel account user dismissed the merge prompt for the service account. * `1` - Dismissed. * `0` - Did **not** dismiss. **Note:** **Only** service accounts return this value.
      - `dismissed_merge_candidates` string[] — An array of objects containing information about service candidates that the system dismissed from merges.
      - `domain` string, domain — The subaccount user's associated domain.
      - `full_username` string — The subaccount's username and domain name.
      - `guid` string — The subaccount unique identifier.
      - `has_expired_invite` 0 | 1 — Whether an expired account login invitation exists. * `1` - Expired account invitation exists. * `0` - Expired account invitation does **not** exist.
      - `has_invite` 0 | 1 — Whether an account login invitation exists. * `1` - Account invitation exists. * `0` - Account invitation does **not** exist.
      - `has_siblings` 0 | 1 — Whether the service account shares a full_username value with another service account. * `1` - Shares. * `0` - Does **not** share.
      - `invite_expiration` integer — When the invitation expires.
      - `issues` object[] — Information about any issues or problems with the subaccount.
        - `area` string — The affected section of cPanel & WHM.
        - `limit` integer — The set quota megabyte (MB) limit for the affected subaccount.
        - `message` string — The description of the issue.
        - `service` 'email' | 'ftp' | 'webdisk' — The affected service.
        - `type` 'error' | 'warning' | 'info' — The type of issue.
        - `used` integer — The number of megabytes (MB) that the account currently uses.
      - `merge_candidates` string[] — An array of objects that represents the service accounts that the system could merge for this subaccount.
      - `parent_type` 'sub' | 'hypothetical', nullable — The type of account that could own the service account. * `sub` - A subaccount. * `hypothetical` - A hypothetical subaccount that does **not** yet exist, but the user could create as part of a merge. * `null` - **Not** a merge candidate.
      - `phone_number` string — The subaccount user's phone number. A valid phone number that conforms to [ITU-T](https://en.wikipedia.org/wiki/ITU-T)'s [E.164](https://en.wikipedia.org/wiki/E.164) -recommended standard for the representation of telephone numbers.
      - `real_name` string — The name of the subaccount's user.
      - `services` object — An object containing information about the subaccount's access to email, FTP, and Web Disk.
        - `email` object — An object containing the information that indicates the subaccount's email status.
          - `enabled` 0 | 1 — Whether the subaccount can access Webmail, POP, and IMAP services. * `1` - Can access. * `0` - **Cannot** access.
          - `quota` integer — The maximum amount of disk space allocated to subaccount's email account.
        - `ftp` object — An object containing the information that indicates the subaccount's FTP status.
          - `enabled` 0 | 1 — Whether the subaccount can access FTP. * `1` - Can access. * `0` - **Cannot** access.
          - `homedir` string, path — The subaccount's FTP home directory relative to the cPanel account's home.
          - `quota` integer — The subaccount's FTP disk space quota. * `0` - Unlimited.
        - `special` 0 | 1 — Whether the account is a system-created special account that the user cannot remove. * `1` - A special account. * `0` - **Not** a special account.
        - `webdisk` object — An object containing information that indicates the subaccount's Web Disk status.
          - `enabled` 0 | 1 — Whether the subaccount can access Web Disk. * `1` - Can access. * `0` - **Cannot** access.
          - `homedir` string, path — The subaccount's Web Disk home directory relative to the cPanel account's home directory.
          - `perms` 'ro' | 'rw' — Whether to grant write permissions to the subaccount. * `ro` - Read-only permissions. * `rw` - Read and write permissions.
          - `private` 0 | 1 — Whether to set the Web Disk directory's permissions to public or private. * `1` - Private (0700). * `0` - Public (0755).
      - `special` 0 | 1 — Whether the account is a system-created special account that the user **cannot** remove. * `1` — A special account. * `0` — **Not** a special account.
      - `sub_account_exists` 0 | 1, nullable — Whether a subaccount exists with the same username. * `1` - Exists. * `0` - Does **not** exist. **Note:** The function returns a `null` value if the account is **not** a service account.
      - `synced_password` 0 | 1, nullable — Whether the user has synchronized the passwords for each of the subaccount's service accounts. * `1` - Synchronized. * `0` - Not synchronized. **Note:** The function returns a `null` value if the account is **not** a subaccount.
      - `type` 'sub' | 'hypothetical' | 'service' | 'cpanel' — The type of account. * `sub` - A subaccount. * `hypothetical` - A hypothetical subaccount that does not exist, but that the user could create as part of a merge. * `service` - A service account. * `cpanel` - The cPanel account.
      - `username` string — The username for the subaccount. A username that meets the subaccount name limitations. - Length 64 characters. - Characters a-z, A-Z, 0-9, dot (.), hyphen (-), underscore (_). **Note:** This value does **not** include the domain name.
    - `errors` string[], nullable — List of errors if the API failed.
    - `messages` string[], nullable — List of messages generated by the API.
    - `metadata` object
      - `transformed` 1 — Post-processing may have transformed the data.
    - `status` 0 | 1 — * `1` - Success. * `0` - Failed. Check the `errors` field for more details.
    - `warnings` string[], nullable — List of warnings generated by the API. Warnings describe non-critical failures or other problematic conditions noted while running an API.

---

[API](https://skmtc.net/cpanel/apis/cpanel-uapi.md) · [All operations](https://skmtc.net/cpanel/apis/cpanel-uapi/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/cpanel/cpanel-uapi/revisions/632e2f8e6d04/schema)
