auth.sessions

Returns list of active auth sessions.

Example of return value:

[ {

“id”: “NyhB1J5vjPjIV82yZ6caU12HLA1boDJcZNWuVQM4hQWuiyUWMGZTz2ElDp7Yk87d”, “origin”: “192.168.0.3:40392”, “credentials”: “LOGIN_PASSWORD”, “credentials_data”: {“username”: “root”}, “current”: True, “internal”: False, “created_at”: {“$date”: 1545842426070} }

]

credentials can be UNIX_SOCKET, ROOT_TCP_SOCKET, LOGIN_PASSWORD, API_KEY or TOKEN, depending on what authentication method was used. For UNIX_SOCKET and LOGIN_PASSWORD logged-in username field will be provided in credentials_data. For API_KEY corresponding api_key will be provided in credentials_data. For TOKEN its parent credential will be provided in credentials_data.

If you want to exclude all internal connections from the list, call this method with following arguments:

[ [

[“internal”, “=”, True] ]

]

Type: object

Type: array
No Additional Items

Tuple Validation

Parameter 1: filters

filters

Type: array Default: []

List of filters for query results. See API documentation for "Query Methods" for more guidance.

No Additional Items
Each item of this array must be:
Type: object

Examples:

[
    [
        "name",
        "=",
        "bob"
    ]
]
[
    [
        "OR",
        [
            [
                [
                    "name",
                    "=",
                    "bob"
                ]
            ],
            [
                [
                    "name",
                    "=",
                    "larry"
                ]
            ]
        ]
    ]
]
Parameter 2: options

options

Type: object
Default:
{ "extra": {}, "order_by": [], "select": [], "count": false, "get": false, "offset": 0, "limit": 0, "force_sql_filters": false }

Query options including pagination, ordering, and additional parameters.

No Additional Properties

Extra

Type: object Default: {}

Extra options are defined on a per-endpoint basis and are described in the documentation for the associated query method.

Order By

Type: array of string Default: []

An array of field names describing the manner in which query results should be ordered. The field names may also have one of more of the following special prefixes: - (reverse sort direction), nulls_first: (place any null values at the head of the results list), nulls_last: (place any null values at the tail of the results list).

No Additional Items
Each item of this array must be:
Type: string

Example:

[
    "size",
    "-devname",
    "nulls_first:-expiretime"
]

Select

Type: array Default: []

An array of field names specifying the exact fields to include in the query return. The dot character . may be used to explicitly select only subkeys of the query result.

No Additional Items
Each item of this array must be:

Type: string
Type: array
No Additional Items
Each item of this array must be:
Type: object

Example:

[
    "username",
    "Authentication.status"
]

Count

Type: boolean Default: false

Return a numeric value representing the number of items that match the specified query-filters.

Get

Type: boolean Default: false

Return the JSON object of the first result matching the specified query-filters. The query fails if there specified query-filters return no results.

Offset

Type: integer Default: 0

This specifies the beginning offset of the results array. When combined with the limit query-option it may be used to implement pagination of large results arrays. WARNING: some query methods provide volatile results and the onus is on the developer to understand whether pagination is appropriate for a particular query API method.

Limit

Type: integer Default: 0

This specifies the maximum number of results matching the specified query-filters to return. When combined wtih the offset query-option it may be used to implement pagination of large results arrays.

WARNING: Some query methods provide volatile results and the onus is on the developer to understand whether pagination is appropriate for a particular query API method.

Force Sql Filters

Type: boolean Default: false

Force use of SQL for result filtering to reduce response time. May not work for all methods.

Result


Type: array of object
No Additional Items
Each item of this array must be:

AuthSessionsQueryResultItem

Type: object
No Additional Properties

Id

Type: string

Unique identifier for the authentication session.

Current

Type: boolean

Whether this is the current active session.

Internal

Type: boolean

Whether this is an internal system session.

Origin

Type: string

Origin information for the session (IP address, hostname, etc.).

Credentials

Type: enum (of string)

Authentication method used for this session.

  • UNIX_SOCKET: Local Unix domain socket authentication
  • LOGIN_PASSWORD: Username and password authentication
  • LOGIN_TWOFACTOR: Two-factor authentication login
  • LOGIN_ONETIME_PASSWORD: One-time password authentication
  • API_KEY: API key authentication
  • TOKEN: Token-based authentication
  • TRUENAS_NODE: TrueNAS cluster node authentication
Must be one of:
  • "UNIX_SOCKET"
  • "LOGIN_PASSWORD"
  • "LOGIN_TWOFACTOR"
  • "LOGIN_ONETIME_PASSWORD"
  • "API_KEY"
  • "TOKEN"
  • "TRUENAS_NODE"

Credentials Data


Detailed credential information specific to the authentication method.

BaseCredentialData

Type: object

UserCredentialData

Type: object
No Additional Properties

Username

Type: string

Username of the authenticated user.

Login At

Type: stringFormat: date-time

Timestamp of when the user logged in.

APIKeyCredentialData

Type: object
No Additional Properties

Username

Type: string

Username of the authenticated user.

Login At

Type: stringFormat: date-time

Timestamp of when the user logged in.

APIKeySessionData

Type: object

API key information used for authentication.

No Additional Properties

Id

Type: integer

Unique identifier for the API key.

Name

Type: string

Human-readable name of the API key.

TokenCredentialData

Type: object
No Additional Properties

TokenParentCredentialsData

Type: object

Parent credential information that generated this token.

No Additional Properties

Credentials

Type: enum (of string)

Type of credentials used to generate this token.

Must be one of:
  • "UNIX_SOCKET"
  • "LOGIN_PASSWORD"
  • "LOGIN_TWOFACTOR"
  • "API_KEY"
  • "TOKEN"
  • "TRUENAS_NODE"

Credentials Data


Credential data used to authenticate the token request.

BaseCredentialData

Type: object

UserCredentialData

Type: object
No Additional Properties

Username

Type: string

Username of the authenticated user.

Login At

Type: stringFormat: date-time

Timestamp of when the user logged in.

APIKeyCredentialData

Type: object
No Additional Properties

Username

Type: string

Username of the authenticated user.

Login At

Type: stringFormat: date-time

Timestamp of when the user logged in.

Type: object

API key information used for authentication.

TokenCredentialData

Type: object
No Additional Properties

Type: object

Parent credential information that generated this token.

Username


Username associated with the token. null if not user-specific.

Type: string
Type: null

Username


Username associated with the token. null if not user-specific.

Type: string
Type: null

Created At

Type: stringFormat: date-time

Timestamp when the session was created.

Secure Transport

Type: boolean

Whether the session was established over a secure transport (HTTPS/WSS).

AuthSessionsQueryResultItem

Type: object
No Additional Properties

Id

Type: string

Unique identifier for the authentication session.

Current

Type: boolean

Whether this is the current active session.

Internal

Type: boolean

Whether this is an internal system session.

Origin

Type: string

Origin information for the session (IP address, hostname, etc.).

Credentials

Type: enum (of string)

Authentication method used for this session.

  • UNIX_SOCKET: Local Unix domain socket authentication
  • LOGIN_PASSWORD: Username and password authentication
  • LOGIN_TWOFACTOR: Two-factor authentication login
  • LOGIN_ONETIME_PASSWORD: One-time password authentication
  • API_KEY: API key authentication
  • TOKEN: Token-based authentication
  • TRUENAS_NODE: TrueNAS cluster node authentication
Must be one of:
  • "UNIX_SOCKET"
  • "LOGIN_PASSWORD"
  • "LOGIN_TWOFACTOR"
  • "LOGIN_ONETIME_PASSWORD"
  • "API_KEY"
  • "TOKEN"
  • "TRUENAS_NODE"

Credentials Data


Detailed credential information specific to the authentication method.

Type: object
Type: object
Type: object
Type: object

Created At

Type: stringFormat: date-time

Timestamp when the session was created.

Secure Transport

Type: boolean

Whether the session was established over a secure transport (HTTPS/WSS).

Type: integer


Required roles: AUTH_SESSIONS_READ