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

# List monitored computers (cursor-paginated).

> Requires the computers:read scope.



## OpenAPI

````yaml /api-reference/openapi.yaml get /v1/computers
openapi: 3.0.1
info:
  title: Secfix Public API
  description: >-
    Machine-to-machine API for the Secfix compliance platform. Authenticate with
    the OAuth 2.0 client_credentials grant via POST /oauth/token, then call /v1
    endpoints with the bearer access token. Errors follow RFC 7807
    (application/problem+json) with stable code strings; lists use opaque cursor
    pagination.
  contact:
    name: Secfix Support
    url: https://secfix.com
    email: support@secfix.com
  license:
    name: Proprietary
    url: https://secfix.com/license
  version: 1.0.0
servers:
  - url: https://api.secfix.com
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Health
    description: Service liveness.
  - name: Inventory
    description: List and govern assets across all categories.
  - name: OAuth
    description: Token endpoint for OAuth 2.0 client-credentials authentication.
  - name: Computers
    description: Read-only monitored computers with device compliance posture.
paths:
  /v1/computers:
    get:
      tags:
        - Computers
      summary: List monitored computers (cursor-paginated).
      description: Requires the computers:read scope.
      operationId: list_2
      parameters:
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: pageCursor
          in: query
          required: false
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CursorPageComputerDto'
components:
  schemas:
    CursorPageComputerDto:
      type: object
      properties:
        pageInfo:
          $ref: '#/components/schemas/PageInfo'
        results:
          type: array
          description: The page of results.
          items:
            $ref: '#/components/schemas/ComputerDto'
      description: Standard cursor-paginated list envelope.
    PageInfo:
      type: object
      properties:
        endCursor:
          type: string
          description: >-
            Opaque cursor for the next page (pass as pageCursor). Null when
            there are no more results.
          example: eyJjIjoiMjAyNi0wNi0zMFQwMjowMDowMFoiLCJyIjoiM2YxYzlhMmUifQ..
        hasNextPage:
          type: boolean
          description: Whether more results are available after this page.
          example: true
        totalCount:
          type: integer
          description: >-
            Total number of results matching the request across all pages (not
            just this page).
          format: int64
          example: 137
      description: Cursor-pagination metadata.
    ComputerDto:
      type: object
      properties:
        compliance:
          $ref: '#/components/schemas/CompliancePostureDto'
        id:
          type: string
          description: Opaque public computer id (UUID).
          format: uuid
          example: 7c2d1e3f-4a5b-4c6d-8e9f-0a1b2c3d4e5f
        isMonitored:
          type: boolean
          description: Whether the device is monitored (computed from agent/MDM presence).
          example: true
        lastCheckedAt:
          type: string
          description: Timestamp of the last device check-in (UTC).
          format: date-time
          example: '2026-06-30T02:00:00.000Z'
        name:
          type: string
          description: Computer name / hostname.
          example: MacBook-Pro-Jane
        operatingSystem:
          type: string
          description: Operating system family.
          example: macOS
        osVersion:
          type: string
          description: Operating system version.
          example: '14.5'
        ownerId:
          type: string
          description: Owner's employee UUID.
          format: uuid
          example: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d
        serialNumber:
          type: string
          description: Hardware serial number.
          example: C02XG2JMJGH7
        tags:
          type: array
          description: Structured tags on the computer.
          items:
            $ref: '#/components/schemas/TagDto'
      description: >-
        Monitored computer with aggregate compliance posture. Read-only in v1
        (governance PATCH targets /v1/inventory/assets/{id}).
    CompliancePostureDto:
      type: object
      properties:
        agentVersion:
          type: string
          description: Version of the monitoring agent, if present.
          example: 3.4.1
        antivirusInstalled:
          type: boolean
          description: Whether antivirus is installed.
          example: true
        diskEncryptionEnabled:
          type: boolean
          description: Whether disk encryption is enabled.
          example: true
        passwordManagerInstalled:
          type: boolean
          description: Whether a password manager is installed.
          example: false
        screenLockEnabled:
          type: boolean
          description: Whether screen lock is enabled.
          example: true
      description: Aggregate device compliance posture (Vanta Monitored-Computers parity).
    TagDto:
      type: object
      properties:
        key:
          maxLength: 1000
          minLength: 0
          type: string
          description: Tag key (an existing customer tag definition).
          example: environment
        value:
          maxLength: 255
          minLength: 0
          type: string
          description: Tag value.
          example: production
      description: >-
        Structured asset tag. On writes, key must match an existing customer tag
        key; value is read-only in v1.
  securitySchemes:
    bearerAuth:
      type: http
      description: Bearer access token obtained from /oauth/token.
      scheme: bearer
      bearerFormat: JWT

````