Skip to content

List Devices ​

Endpoint ​

http
GET /unified/mdm/devices
Integrations supported
  • Jamf
  • Kandji
  • Ninjaone
Partial response integrations

For partial response integrations, you will need to fetch the individual resource using the "get" endpoint to get the full response object.

  • Jamf

Query parameters ​

Refer Specifying query parameters in Truto APIs

integrated_account_id
string · uuid
REQUIRED · 

The ID of the integrated account to use for the request.

Example: 62f44730-dd91-461e-bd6a-aedd9e0ad79d
truto_response_format
string

The format of the response.

  • unified returns the response with unified mappings applied.
  • raw returns the unprocessed, raw response from the remote API.
  • normalized applies the unified mappings and returns the data in a normalized format.
  • stream returns the response as a stream, which is ideal for transmitting large datasets, files, or binary data. Using streaming mode helps to efficiently handle large payloads or real-time data flows without requiring the entire data to be buffered in memory.

Defaults to unified.

All possible enum values:
  • unified
  • raw
  • normalized
  • stream
Example: unified
truto_key_by
string

By default the result attribute is an array of objects. This parameter allows you to specify a field in each result objects to use as key, which transforms the result array into an object with the array items keyed by the field. This is useful for when you want to use the result as a lookup table.

Example: id
truto_ignore_limit
boolean

Ignores the limit query parameter.

truto_ignore_remote_data
boolean

Excludes the remote_data attribute from the response.

truto_exclude_fields
array

Array of fields to exclude from the response.

Example: truto_exclude_fields[]=id&truto_exclude_fields[]=name
remote_query
object

Query parameters to pass to the underlying API without any transformations. Refer this guide to see how to structure the query parameters.

Example: remote_query[foo]=bar
name
string

Pass this value only when type is mobile.

Supported in
  • Jamf
  • Kandji
  • Ninjaone
type
string

The type/category of the device

All possible enum values:
  • desktop
  • laptop
  • mobile
  • other
  • server
  • tablet
  • virtual_machine
  • workstation
Enum support by integration
  • Jamf
    • mobile
    • desktop
Required in
  • Jamf
model
string

The hardware model of the device

Supported in
  • Kandji
os_version
string

The operating system version

Supported in
  • Kandji
platform
string

The platform family of the device

All possible enum values:
  • android
  • chromeos
  • ios
  • ipados
  • linux
  • macos
  • unknown
  • windows
Supported in
  • Kandji
serial_number
string

The serial number of the device

Supported in
  • Kandji
tags
array

The device's tags

Supported in
  • Kandji
owner
object

The assigned owner of the device

Supported in
  • Kandji
id
string

The unique identifier for a user

name
string

The name of the user

emails
object[]

The emails of the user

email
string

The email address

type
string

The type of email address

is_primary
boolean

Whether the email address is primary

policy
object

The applied policy / blueprint

Supported in
  • Kandji
id
string

The unique identifier for a policy

name
string

The name of the policy

organization
object

The organization/account the device belongs to

Supported in
  • Ninjaone
id
string

The unique identifier for an organization

name
string

The name of the organization

Response Body ​

result
object[]

List of Devices

id
string
REQUIRED · 

The unique identifier for the device

Supported in
  • Jamf
  • Kandji
  • Ninjaone
name
string

The display name of the device

Supported in
  • Jamf
  • Kandji
  • Ninjaone
hostname
string

The host/system name of the device

Supported in
  • Ninjaone
dns_name
string

The DNS name of the device

Supported in
  • Ninjaone
netbios_name
string

The NetBIOS name of the device (Windows)

Supported in
  • Ninjaone
type
string

The type/category of the device

All possible enum values:
  • workstation
  • server
  • mobile
  • tablet
  • laptop
  • desktop
  • virtual_machine
  • other
Supported in
  • Jamf
  • Ninjaone
is_corporate_owned
boolean

Whether the device is corporate-owned (as opposed to personally-owned/BYOD)

platform
string

The platform family of the device

All possible enum values:
  • windows
  • macos
  • linux
  • ios
  • ipados
  • android
  • chromeos
  • unknown
Supported in
  • Jamf
  • Kandji
  • Ninjaone
model
string

The hardware model of the device

Supported in
  • Jamf
  • Kandji
manufacturer
string

The hardware manufacturer of the device

serial_number
string

The serial number of the device

Supported in
  • Jamf
  • Kandji
  • Ninjaone
asset_tag
string

The asset tag / inventory tag of the device

Supported in
  • Jamf
  • Kandji
  • Ninjaone
os_name
string

The operating system name

Supported in
  • Jamf
os_version
string

The operating system version

Supported in
  • Jamf
  • Kandji
os_build
string

The operating system build identifier

Supported in
  • Kandji
os_version_extra
string

Additional operating system version information

Supported in
  • Kandji
disk_encryption
boolean

Whether the disk encryption is enabled on the device

Supported in
  • Jamf
firewall_enabled
boolean

Whether the host firewall is enabled on the device

Supported in
  • Jamf
mdm_enabled
boolean

Whether MDM management is enabled on the device

Supported in
  • Jamf
  • Kandji
agent_installed
boolean

Whether a management agent is installed

Supported in
  • Kandji
agent_version
string

The management agent version

Supported in
  • Kandji
enrollment_status
string

Enrollment state of the device in the provider

All possible enum values:
  • enrolled
  • pending
  • removed
  • missing
  • unknown
Supported in
  • Kandji
approval_status
string

Approval state if the provider requires approval

All possible enum values:
  • approved
  • pending
  • rejected
  • unknown
Supported in
  • Ninjaone
is_offline
boolean

Whether the device is currently offline

Supported in
  • Ninjaone
first_enrolled_at
string · date-time

The date and time the device was first enrolled

Supported in
  • Kandji
last_enrolled_at
string · date-time

The date and time the device was most recently enrolled

Supported in
  • Jamf
  • Kandji
last_scan_at
string · date-time

The date and time the device was last scanned for vulnerabilities or security posture signals, when supported by the underlying product

Supported in
  • Jamf
last_activity_at
string · date-time

The date and time of the last recorded activity for the device

Supported in
  • Jamf
  • Kandji
organization
object

The organization/account the device belongs to

Supported in
  • Ninjaone
id
string

The unique identifier for an organization

name
string

The name of the organization

owner
object

The assigned owner of the device

Supported in
  • Kandji
  • Ninjaone
id
string

The unique identifier for a user

name
string

The name of the user

emails
object[]

The emails of the user

email
string

The email address

type
string

The type of email address

is_primary
boolean

Whether the email address is primary

policy
object

The applied policy / blueprint

Supported in
  • Kandji
  • Ninjaone
id
string

The unique identifier for a policy

name
string

The name of the policy

edr_installed
boolean

Whether an endpoint detection and response (EDR) agent is installed or detected on the device

edr_status
string

The health/status of the EDR agent on the device, when available from the underlying product

All possible enum values:
  • healthy
  • unhealthy
  • degraded
  • unknown
critical_vuln_count
integer

The number of critical severity vulnerabilities detected on the device

high_vuln_count
integer

The number of high severity vulnerabilities detected on the device

patch_status
string

The patch compliance status of the device, based on signals available in the underlying product

All possible enum values:
  • up_to_date
  • updates_available
  • unknown
maintenance_status
string

The maintenance status

All possible enum values:
  • none
  • pending
  • active
  • completed
  • unknown
Supported in
  • Ninjaone
maintenance_start_at
string · date-time

The date and time maintenance starts

Supported in
  • Ninjaone
maintenance_end_at
string · date-time

The date and time maintenance ends

Supported in
  • Ninjaone
maintenance_reason
string

The maintenance reason message

Supported in
  • Ninjaone
warranty_start_at
string · date-time

The date and time warranty starts

Supported in
  • Jamf
  • Ninjaone
warranty_end_at
string · date-time

The date and time warranty ends

Supported in
  • Ninjaone
warranty_fulfillment_at
string · date-time

The manufacturer fulfillment date

Supported in
  • Ninjaone
backup_last_success_at
string · date-time

The date and time the last backup succeeded

Supported in
  • Jamf
backup_last_failure_at
string · date-time

The date and time the last backup failed

backup_total_bytes
number

Total backup usage in bytes

public_ip
string

The public IP address of the device

Supported in
  • Jamf
  • Ninjaone
ip_addresses
string[]

The private IP addresses of the device

Supported in
  • Jamf
  • Ninjaone
mac_addresses
string[]

The MAC addresses of the device

Supported in
  • Jamf
  • Ninjaone
tags
object[]

The device's tags

Supported in
  • Kandji
  • Ninjaone
id
string

The tag's unique identifier

name
string

The tag's name

notes
object[]

Notes attached to the device

Supported in
  • Ninjaone
id
string
REQUIRED · 

The note's unique identifier

title
string

The note's title

owner
object

The note's owner

id
string

The note's owner's unique identifier

content
string

The note's content

custom_fields
object

Provider or customer specific fields mapped into a flexible key-value object

created_at
string · date-time

The date and time the device record was created

Supported in
  • Jamf
  • Ninjaone
updated_at
string · date-time

The date and time the device record was last updated

Supported in
  • Ninjaone
remote_data
object

Raw data returned from the remote API call.

next_cursor
string

The cursor to use for the next page of results. Pass this value as next_cursor in the query parameter in the next request to get the next page of results.