---
title: "GET /endpoints/devices/"
method: GET
path: "/endpoints/devices/"
tags: ["endpoints"]
---

# GET /endpoints/devices/

`GET /endpoints/devices/`

Mixin to add a used_by endpoint to return a list of all objects using this object

## Query parameters

- `identifier` string
- `name` string
- `ordering` string
- `page` integer
- `page_size` integer
- `search` string

## Response `200`

- PaginatedEndpointDeviceList
  - `pagination` Pagination, required
    - `next` number, required
    - `previous` number, required
    - `count` number, required
    - `current` number, required
    - `total_pages` number, required
    - `start_index` number, required
    - `end_index` number, required
  - `results` EndpointDevice[], required
    - `device_uuid` string, uuid
    - `pbm_uuid` string, uuid, required
    - `name` string, required
    - `access_group` string, uuid, nullable
    - `access_group_obj` DeviceAccessGroup
      - `pbm_uuid` string, uuid, required
      - `name` string, required
      - `attributes` object
    - `expiring` boolean
    - `expires` string, date-time, nullable
    - `facts` DeviceFactSnapshot, required
      - `data` DeviceFacts, required
        - `os` OperatingSystem — For example: {"family":"linux","name":"Ubuntu","version":"24.04.3 LTS (Noble Numbat)","arch":"amd64"} {"family": "windows","name":"Server 2022 Datacenter","version":"10.0.20348.4405","arch":"amd64"} {"family": "windows","name":"Server 2022 Datacenter","version":"10.0.20348.4405","arch":"amd64"} {"family": "mac_os", "name": "", "version": "26.2", "arch": "arm64"}
          - `family` 'linux' | 'unix' | 'bsd' | 'windows' | 'mac_os' | 'android' | 'i_os' | 'other', required
          - `name` string — Operating System name, such as 'Server 2022' or 'Ubuntu'
          - `version` string — Operating System version, must always be the version number but may contain build name
          - `arch` string
        - `disks` Disk[], nullable
          - `name` string, required
          - `mountpoint` string, required
          - `label` string
          - `capacity_total_bytes` integer
          - `capacity_used_bytes` integer
          - `encryption_enabled` boolean
        - `network` Network
          - `hostname` string, required
          - `firewall_enabled` boolean
          - `interfaces` NetworkInterface[], required
            - `name` string, required
            - `hardware_address` string, required
            - `ip_addresses` string[]
            - `dns_servers` string[]
          - `gateway` string
        - `hardware` Hardware
          - `model` string
          - `manufacturer` string
          - `serial` string, required
          - `cpu_name` string
          - `cpu_count` integer
          - `memory_bytes` integer
        - `software` Software[], nullable
          - `name` string, required
          - `version` string
          - `source` string, required
          - `path` string
        - `processes` Process[], nullable
          - `id` integer, required
          - `name` string, required
          - `user` string
        - `users` DeviceUser[], nullable
          - `id` string, required
          - `username` string
          - `name` string
          - `home` string
        - `groups` DeviceGroup[], nullable
          - `id` string, required
          - `name` string
        - `vendor` object
      - `connection` string, uuid, required
      - `created` string, date-time, required
      - `expires` string, date-time, nullable, required
      - `vendor` 'goauthentik.io/@merged' | 'goauthentik.io/platform' | 'fleetdm.com' | 'chrome.google.com', required
    - `attributes` object
    - `primary_binding_obj` DeviceUserBinding, required — PolicyBinding Serializer
      - `pk` string, uuid, required
      - `policy` string, uuid, nullable
      - `group` string, uuid, nullable
      - `user` integer, nullable
      - `policy_obj` Policy, required — Policy Serializer
        - `pk` string, uuid, required
        - `name` string, required
        - `execution_logging` boolean — When this option is enabled, all executions of this policy will be logged. By default, only execution errors are logged.
        - `component` string, required — Get object component so that we know how to edit the object
        - `verbose_name` string, required — Return object's verbose_name
        - `verbose_name_plural` string, required — Return object's plural verbose_name
        - `meta_model_name` string, required — Return internal model name
        - `bound_to` integer, required — Return objects policy is bound to
        - `last_updated` string, date-time, required
        - `created` string, date-time, required
      - `group_obj` PartialGroup, required — Partial Group Serializer, does not include child relations.
        - `pk` string, uuid, required
        - `num_pk` integer, required — Get a numerical, int32 ID for the group
        - `name` string, required
        - `is_superuser` boolean — Users added to this group will be superusers.
        - `attributes` object
      - `user_obj` PartialUser, required — Partial User Serializer, does not include child relations.
        - `pk` integer, required
        - `username` string, required — Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.
        - `name` string, required — User's display name.
        - `is_active` boolean — Designates whether this user should be treated as active. Unselect this instead of deleting accounts.
        - `last_login` string, date-time, nullable
        - `email` string, email
        - `attributes` object
        - `uid` string, required
      - `target` string, uuid, required
      - `negate` boolean — Negates the outcome of the policy. Messages are unaffected.
      - `enabled` boolean
      - `order` integer, required
      - `timeout` integer — Timeout after which Policy execution is terminated.
      - `failure_result` boolean — Result if the Policy execution fails.
      - `expires` string, date-time, nullable, required
      - `expiring` boolean, required
      - `is_primary` boolean
      - `connector` string, uuid, nullable, required
      - `connector_obj` Connector, required
        - `connector_uuid` string, uuid
        - `name` string, required
        - `enabled` boolean
        - `component` string, required — Get object component so that we know how to edit the object
        - `verbose_name` string, required — Return object's verbose_name
        - `verbose_name_plural` string, required — Return object's plural verbose_name
        - `meta_model_name` string, required — Return internal model name
  - `autocomplete` Autocomplete, required

## Other responses

- `400`
- `403`

## Changes

- **2026-09-12** `0e655951ef6b` — 1 info
  - added the required property `results/items/primary_binding_obj` to the response with the `200` status

[Change history](https://skmtc.dev/goauthentik/apis/authentik/changes/endpoints/devices/get.md)

---

[API](https://skmtc.dev/goauthentik/apis/authentik.md) · [All operations](https://skmtc.dev/goauthentik/apis/authentik/llms.txt) · [OpenAPI document](https://skmtc.dev/goauthentik/apis/authentik/revisions/72050dd9f6ba?raw)
