> ## Documentation Index
> Fetch the complete documentation index at: https://docs.assetinfinity.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Every device discovery knows, across every source that has reported it: whether it is linked to an asset, unreviewed or…

> Every device discovery knows, across every source that has reported it: whether it is linked to an asset, unreviewed or dismissed, when it was first and last seen, and what it last said about
itself. Manufacturer, model and operating system are as the device spelled them. os_guess is what
a sweep without a credential inferred from how the device answered — WINDOWS, UNIX_LIKE or
NETWORK_DEVICE — and is empty once the device has named its operating system. mac_vendor is who the
IEEE registered the MAC address prefix to, which is the maker of the network card; empty for an
address the device randomised. device_class_guess is PRINTER, CAMERA, NETWORK_EQUIPMENT, SMART_DEVICE
or COMPUTER, inferred from the card's maker, the guessed operating system and the ports that
answered, and empty once the device has said what it is.



## OpenAPI

````yaml /api-reference/openapi.json get /discovered_devices
openapi: 3.0.0
info:
  description: ''
  title: >-
    The only schema PostgREST exposes. Reads are security_invoker views; writes
    are SECURITY DEFINER functions. Rebuilt wholesale on every deploy — it holds
    no data.
  version: 12.2.3
servers:
  - url: https://app.assetinfinity.ai/api
security: []
tags:
  - name: Signing in
  - name: Profile
  - name: My work
  - name: Sites and locations
  - name: Assets
  - name: Asset lifecycle
  - name: Asset components
  - name: Work lifecycle
  - name: Work order execution
  - name: Work sequencing
  - name: Maintenance
  - name: Inspections
  - name: Checklists
  - name: Verification
  - name: Self verification
  - name: Inventory
  - name: Inventory detail
  - name: Parts demand
  - name: Procurement
  - name: Vendors and contracts
  - name: Contracts
  - name: Amendments
  - name: Vendor spend forecast
  - name: Workforce
  - name: Workforce detail
  - name: Capacity
  - name: Dispatch
  - name: Shutdown
  - name: Permits
  - name: Tools
  - name: Tools on jobs
  - name: Bookings
  - name: Calibration history
  - name: Reliability
  - name: Sensors and meters
  - name: Readers
  - name: Trackers
  - name: Real-time location
  - name: Feeds
  - name: Energy
  - name: IT assets
  - name: IT asset software
  - name: IT asset topology
  - name: Map
  - name: Floor plans
  - name: Labels
  - name: Lost and found
  - name: Visitors
  - name: Root cause analysis
  - name: Costing
  - name: Finance
  - name: Budgets
  - name: Capex plans
  - name: FF&E plans
  - name: Documents
  - name: Document control
  - name: Document folders
  - name: Document tree
  - name: Knowledge
  - name: Reports
  - name: Dashboards
  - name: Extracts
  - name: Data exports
  - name: Audit center
  - name: Audit feed
  - name: Activity
  - name: Conversations
  - name: Notifications
  - name: Date reminders
  - name: Channels
  - name: Search
  - name: Copilot
  - name: Import
  - name: Bulk jobs
  - name: File exchange
  - name: Filing exceptions
  - name: Files
  - name: Sync
  - name: Support
  - name: API keys
  - name: Webhooks
  - name: MCP connections
  - name: MCP sign-in
  - name: SCIM provisioning
  - name: Directory sync
  - name: Security streams
  - name: Single sign-on
  - name: Two-factor sign-in
  - name: Admin
  - name: Access
  - name: Lookups
  - name: Read models
  - name: Reference
  - name: Reference columns
  - name: Reference entry
  - name: List views
  - name: Mapping
  - name: Numbering
  - name: Branding
  - name: Custom fields
  - name: Form studio
  - name: Workflows
  - name: Workflow studio
  - name: Rules
  - name: Statuses and transitions
  - name: Currencies and locales
  - name: Today
  - name: Work configuration
  - name: Asset configuration
  - name: Inventory configuration
  - name: Tool configuration
  - name: Workforce configuration
  - name: Vendor and contract configuration
  - name: Document configuration
  - name: Inspection configuration
  - name: Sites, locations and the organisation
  - name: Setup
  - name: Features
  - name: Billing
  - name: Licence
  - name: Welcome
  - name: Tray
  - name: Tenant switch
  - name: Release
  - name: Telegram
  - name: Inbound mail
  - name: Platform
externalDocs:
  description: PostgREST Documentation
  url: https://postgrest.org/en/v12/references/api.html
paths:
  /discovered_devices:
    get:
      tags:
        - IT assets
      summary: >-
        Every device discovery knows, across every source that has reported it:
        whether it is linked to an asset, unreviewed or…
      description: >-
        Every device discovery knows, across every source that has reported it:
        whether it is linked to an asset, unreviewed or dismissed, when it was
        first and last seen, and what it last said about

        itself. Manufacturer, model and operating system are as the device
        spelled them. os_guess is what

        a sweep without a credential inferred from how the device answered —
        WINDOWS, UNIX_LIKE or

        NETWORK_DEVICE — and is empty once the device has named its operating
        system. mac_vendor is who the

        IEEE registered the MAC address prefix to, which is the maker of the
        network card; empty for an

        address the device randomised. device_class_guess is PRINTER, CAMERA,
        NETWORK_EQUIPMENT, SMART_DEVICE

        or COMPUTER, inferred from the card's maker, the guessed operating
        system and the ports that

        answered, and empty once the device has said what it is.
      parameters:
        - $ref: '#/components/parameters/rowFilter.discovered_devices.id'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.status'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.asset_id'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.asset_number'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.asset_name'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.site_id'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.first_seen_at'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.last_seen_at'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.last_source_id'
        - $ref: >-
            #/components/parameters/rowFilter.discovered_devices.last_source_name
        - $ref: '#/components/parameters/rowFilter.discovered_devices.is_managed'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.serial_number'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.hostname'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.primary_mac'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.ip_address'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.device_class'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.manufacturer'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.model'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.os_name'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.os_version'
        - $ref: >-
            #/components/parameters/rowFilter.discovered_devices.current_attributes
        - $ref: '#/components/parameters/rowFilter.discovered_devices.last_user_id'
        - $ref: >-
            #/components/parameters/rowFilter.discovered_devices.dismissed_reason
        - $ref: '#/components/parameters/rowFilter.discovered_devices.dismissed_note'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.dismissed_at'
        - $ref: >-
            #/components/parameters/rowFilter.discovered_devices.software_installed
        - $ref: '#/components/parameters/rowFilter.discovered_devices.identities'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.linked_by'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.linked_at'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.link_score'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.link_reason'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.os_guess'
        - $ref: '#/components/parameters/rowFilter.discovered_devices.mac_vendor'
        - $ref: >-
            #/components/parameters/rowFilter.discovered_devices.device_class_guess
        - $ref: '#/components/parameters/select'
        - $ref: '#/components/parameters/order'
        - $ref: '#/components/parameters/range'
        - $ref: '#/components/parameters/rangeUnit'
        - $ref: '#/components/parameters/offset'
        - $ref: '#/components/parameters/limit'
        - $ref: '#/components/parameters/preferCount'
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/discovered_devices'
                type: array
            application/vnd.pgrst.object+json:
              schema:
                items:
                  $ref: '#/components/schemas/discovered_devices'
                type: array
            application/vnd.pgrst.object+json;nulls=stripped:
              schema:
                items:
                  $ref: '#/components/schemas/discovered_devices'
                type: array
            text/csv:
              schema:
                items:
                  $ref: '#/components/schemas/discovered_devices'
                type: array
          description: OK
        '206':
          description: Partial Content
components:
  parameters:
    rowFilter.discovered_devices.id:
      in: query
      name: id
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.status:
      in: query
      name: status
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.asset_id:
      in: query
      name: asset_id
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.asset_number:
      in: query
      name: asset_number
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.asset_name:
      in: query
      name: asset_name
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.site_id:
      in: query
      name: site_id
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.first_seen_at:
      in: query
      name: first_seen_at
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.last_seen_at:
      in: query
      name: last_seen_at
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.last_source_id:
      in: query
      name: last_source_id
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.last_source_name:
      in: query
      name: last_source_name
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.is_managed:
      in: query
      name: is_managed
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.serial_number:
      in: query
      name: serial_number
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.hostname:
      in: query
      name: hostname
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.primary_mac:
      in: query
      name: primary_mac
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.ip_address:
      in: query
      name: ip_address
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.device_class:
      in: query
      name: device_class
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.manufacturer:
      in: query
      name: manufacturer
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.model:
      in: query
      name: model
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.os_name:
      in: query
      name: os_name
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.os_version:
      in: query
      name: os_version
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.current_attributes:
      in: query
      name: current_attributes
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.last_user_id:
      in: query
      name: last_user_id
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.dismissed_reason:
      in: query
      name: dismissed_reason
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.dismissed_note:
      in: query
      name: dismissed_note
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.dismissed_at:
      in: query
      name: dismissed_at
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.software_installed:
      in: query
      name: software_installed
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.identities:
      in: query
      name: identities
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.linked_by:
      in: query
      name: linked_by
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.linked_at:
      in: query
      name: linked_at
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.link_score:
      in: query
      name: link_score
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.link_reason:
      in: query
      name: link_reason
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.os_guess:
      in: query
      name: os_guess
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.mac_vendor:
      in: query
      name: mac_vendor
      required: false
      schema:
        type: string
    rowFilter.discovered_devices.device_class_guess:
      in: query
      name: device_class_guess
      required: false
      schema:
        type: string
    select:
      description: Filtering Columns
      in: query
      name: select
      required: false
      schema:
        type: string
    order:
      description: Ordering
      in: query
      name: order
      required: false
      schema:
        type: string
    range:
      description: Limiting and Pagination
      in: header
      name: Range
      required: false
      schema:
        type: string
    rangeUnit:
      description: Limiting and Pagination
      in: header
      name: Range-Unit
      required: false
      schema:
        default: items
        type: string
    offset:
      description: Limiting and Pagination
      in: query
      name: offset
      required: false
      schema:
        type: string
    limit:
      description: Limiting and Pagination
      in: query
      name: limit
      required: false
      schema:
        type: string
    preferCount:
      description: Preference
      in: header
      name: Prefer
      required: false
      schema:
        enum:
          - count=none
        type: string
  schemas:
    discovered_devices:
      description: >-
        Every device discovery knows, across every source that has reported it:
        whether it is linked

        to an asset, unreviewed or dismissed, when it was first and last seen,
        and what it last said about

        itself. Manufacturer, model and operating system are as the device
        spelled them. os_guess is what

        a sweep without a credential inferred from how the device answered —
        WINDOWS, UNIX_LIKE or

        NETWORK_DEVICE — and is empty once the device has named its operating
        system. mac_vendor is who the

        IEEE registered the MAC address prefix to, which is the maker of the
        network card; empty for an

        address the device randomised. device_class_guess is PRINTER, CAMERA,
        NETWORK_EQUIPMENT, SMART_DEVICE

        or COMPUTER, inferred from the card's maker, the guessed operating
        system and the ports that

        answered, and empty once the device has said what it is.
      properties:
        asset_id:
          description: >-
            Note:

            This is a Foreign Key to `asset_contracts.asset_id`.<fk
            table='asset_contracts' column='asset_id'/>
          format: uuid
          type: string
        asset_name:
          format: character varying
          maxLength: 250
          type: string
        asset_number:
          format: character varying
          maxLength: 80
          type: string
        current_attributes:
          format: jsonb
        device_class:
          format: character varying
          maxLength: 60
          type: string
        device_class_guess:
          format: text
          type: string
        dismissed_at:
          format: timestamp with time zone
          type: string
        dismissed_note:
          format: text
          type: string
        dismissed_reason:
          format: character varying
          maxLength: 30
          type: string
        first_seen_at:
          format: timestamp with time zone
          type: string
        hostname:
          format: character varying
          maxLength: 255
          type: string
        id:
          description: |-
            Note:
            This is a Primary Key.<pk/>
          format: uuid
          type: string
        identities:
          format: jsonb
        ip_address:
          format: text
          type: string
        is_managed:
          format: boolean
          type: boolean
        last_seen_at:
          format: timestamp with time zone
          type: string
        last_source_id:
          description: >-
            Note:

            This is a Foreign Key to `discovery_sources.id`.<fk
            table='discovery_sources' column='id'/>
          format: uuid
          type: string
        last_source_name:
          format: character varying
          maxLength: 200
          type: string
        last_user_id:
          description: >-
            Note:

            This is a Foreign Key to `capex_invite_candidates.id`.<fk
            table='capex_invite_candidates' column='id'/>
          format: uuid
          type: string
        link_reason:
          format: text
          type: string
        link_score:
          format: numeric
          type: number
        linked_at:
          format: timestamp with time zone
          type: string
        linked_by:
          format: character varying
          maxLength: 10
          type: string
        mac_vendor:
          format: text
          type: string
        manufacturer:
          format: character varying
          maxLength: 400
          type: string
        model:
          format: character varying
          maxLength: 400
          type: string
        os_guess:
          format: text
          type: string
        os_name:
          format: character varying
          maxLength: 400
          type: string
        os_version:
          format: character varying
          maxLength: 120
          type: string
        primary_mac:
          format: character varying
          maxLength: 17
          type: string
        serial_number:
          format: character varying
          maxLength: 120
          type: string
        site_id:
          description: >-
            Note:

            This is a Foreign Key to `entry_currencies.for_site_id`.<fk
            table='entry_currencies' column='for_site_id'/>
          format: uuid
          type: string
        software_installed:
          format: bigint
          type: integer
        status:
          format: character varying
          maxLength: 20
          type: string
      type: object

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.