Skip to main content

list-users

dci list-users [flags]

Returns a list of users in the organization, including both active users and invited users. When the email query parameter is provided, returns only the user matching that email address. If no user is found for the given email, an empty list is returned.

CLI default view

dci list-users presents a curated table by default:

  • Columns: email, role (roleId resolved to the role name), status, last login (UTC) (from lastLogin), and mfa enrolled (from mfaEnrolled; blank when unknown).
  • In interactive tables, last login (UTC) renders in your local timezone and is titled last login (local); machine formats, agent mode, and --utc keep UTC — see Timestamps and timezones.
  • --output json and explicit -C/--fields selections return the raw fields documented below.

Flags

--email: (string format:email)

Output

OK - List of users returned.

By default dci renders the result as a table. Use --output json to get the full structure described below — see Output formats.

FieldTypeDescription
usersarray of object
users[].idstringThe unique ID of the user.
users[].emailstringThe email address of the user.
users[].displayNamestringThe user's display name.
users[].firstNamestringThe user's first name.
users[].lastNamestringThe user's last name.
users[].jobTitlestringThe user's job function. One of: "Data Engineer / Data Analysts", "Executive Team", "Finance / Accounting", "Founder", "Legal / Purchasing", "Management", "Sales / Marketing", "Software / Ops Engineer".
users[].phonestringThe user's country code (e.g., +44).
users[].phoneExtensionstringThe user's phone extension.
users[].languagestringThe user's preferred language. One of: "en", "ja".
users[].roleIdstringThe ID of the user's role.
users[].organizationIdstringThe ID of the user's organization.
users[].statusstringThe status of the user (active or invited). One of: "active", "invited".
rowCountinteger (int64)The number of returned records.
Raw JSON schema
{
"type": "object",
"description": "Response body for the list users endpoint.",
"properties": {
"users": {
"type": "array",
"items": {
"type": "object",
"description": "Summary information of a user.",
"properties": {
"id": {
"type": "string",
"description": "The unique ID of the user."
},
"email": {
"type": "string",
"description": "The email address of the user."
},
"displayName": {
"type": "string",
"description": "The user's display name."
},
"firstName": {
"type": "string",
"description": "The user's first name."
},
"lastName": {
"type": "string",
"description": "The user's last name."
},
"jobTitle": {
"type": "string",
"description": "The user's job function.",
"enum": [
"Data Engineer / Data Analysts",
"Executive Team",
"Finance / Accounting",
"Founder",
"Legal / Purchasing",
"Management",
"Sales / Marketing",
"Software / Ops Engineer"
]
},
"phone": {
"type": "string",
"description": "The user's country code (e.g., +44).",
"pattern": "^\\+[0-9]+$"
},
"phoneExtension": {
"type": "string",
"description": "The user's phone extension."
},
"language": {
"type": "string",
"description": "The user's preferred language.",
"enum": [
"en",
"ja"
]
},
"roleId": {
"type": "string",
"description": "The ID of the user's role."
},
"organizationId": {
"type": "string",
"description": "The ID of the user's organization."
},
"status": {
"type": "string",
"description": "The status of the user (active or invited).",
"enum": [
"active",
"invited"
]
}
}
}
},
"rowCount": {
"type": "integer",
"description": "The number of returned records.",
"format": "int64",
"example": 5
}
}
}

Errors

On failure, dci prints a single error message — with a hint when one is available — and exits with a typed code your scripts can branch on. See Errors and exit codes for the full contract.

HTTP statusExit codeError codeMeaning
40030VALIDATION_ERRORThe arguments or request body were rejected. Review the command's flags and payload.
40110AUTHENTICATION_FAILEDNot signed in, or the API token is invalid. Run dci login or check DCI_API_KEY.
40311PERMISSION_DENIEDThe DoiT user or the active customer context does not have access.
50040API_SERVER_ERRORThe API failed to process the request. Retryable; contact DoiT support if it persists.

Aliases: listusers