Access user accounts and authentication details.
query GetUser($id: ID, $email: String) {
User(id: $id, email: $email) {
id
label
first_name
last_name
email
active
lang
created_at
updated_at
notifications {
id
}
active_user_profiles {
id
}
two_factor_authentication
has_qbo_single_sign_on
}
}
query Users(
$where: QueryUsersWhereWhereConditions,
$orderBy: [QueryUsersOrderByOrderByClause!]
) {
Users(
where: $where
orderBy: $orderBy
) {
id
label
first_name
last_name
email
active
lang
created_at
updated_at
}
}
{
"where": {
"AND": [
{ "column": "ACTIVE", "operator": "EQ", "value": true }
]
},
"orderBy": [
{ "column": "LAST_NAME", "order": "ASC" }
]
}
| Field | Type | Description |
|---|
id | ID | Unique identifier of the user. |
label | String | Display label of the user. |
first_name | String | First name. |
last_name | String | Last name. |
email | String | Email address. |
active | Boolean | If true, the user is active. |
lang | Lang | Language preference (enum: fr, en, ca). |
email_verified_at | DateTime | Email verification timestamp (may be hidden to public). |
created_at | DateTime | Creation date. |
updated_at | DateTime | Last update date. |
notifications | [Notification] | User notifications (paginated). |
has_qbo_single_sign_on | Boolean | Indicates if QBO SSO is enabled (may be hidden to public). |
two_factor_authentication | Boolean | Indicates if Two‑Factor Authentication is enabled. |
default_user_profile_id | Int | Default user profile ID used at login. |
active_user_profiles | [UserProfile] | Active user profiles associated to the user. |
You can create filters based on following fields
| id - ID |
|---|
Example: { "column": "ID", "operator": "EQ", "value": 100012 } |
| label - String |
|---|
Example: { "column": "LABEL", "operator": "LIKE", "value": "%Manager%" } |
| active - Boolean |
|---|
Example: { "column": "ACTIVE", "operator": "EQ", "value": true } |
| first_name - String |
|---|
Example: { "column": "FIRST_NAME", "operator": "LIKE", "value": "John%" } |
| last_name - String |
|---|
Example: { "column": "LAST_NAME", "operator": "LIKE", "value": "%Doe" } |
| created_at - DateTime |
|---|
Example: { "column": "CREATED_AT", "operator": "GT", "value": "2025-01-01T00:00:00Z" } |
| updated_at - DateTime |
|---|
Example: { "column": "UPDATED_AT", "operator": "LT", "value": "2025-12-31T23:59:59Z" } |
You can sort data based on following fields: id, label, first_name, last_name, email, lang, email_verified_at, created_at, updated_at
query SortUsers(
$where: QueryUsersWhereWhereConditions
) {
Users(
where: $where
orderBy: [{ column: LAST_NAME, order: ASC }]
) {
id
label
first_name
last_name
email
active
}
}
{
"data": {
"Users": [
{
"id": 100001,
"label": "John Doe",
"first_name": "John",
"last_name": "Doe",
"email": "[email protected]",
"active": true,
"lang": "en",
"created_at": "2025-01-01T00:00:00Z",
"updated_at": "2025-10-01T12:00:00Z"
},
{
"id": 100002,
"label": "Jane Smith",
"first_name": "Jane",
"last_name": "Smith",
"email": "[email protected]",
"active": false,
"lang": "fr",
"created_at": "2025-01-02T00:00:00Z",
"updated_at": "2025-10-02T12:00:00Z"
}
]
}
}
| Field | Type | Description |
|---|
id | String | Notification ID. |
created_at | DateTime | Creation time. |
updated_at | DateTime | Last update time. |
read_at | DateTime | Read time (null if unread). |
company_id | String | Company ID. |
data | JSON | Notification data payload. |
type | String | Notification type. |
| Value | Description |
|---|
fr | French. |
en | English. |
ca | Canadian French. |
gb | British English. |