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

# Lists agent assets

> Lists agent (managed device) assets for the service provider using cursor pagination. Results are sorted by `createdOn` descending (newest first).



## OpenAPI

````yaml /api-reference/openapi.json get /v1/assets/agents
openapi: 3.0.4
info:
  title: Public API
  description: Gorelo Public API documentation.
  version: 1.0.0
servers:
  - url: https://api.usw.gorelo.io
    description: US
  - url: https://api.aue.gorelo.io
    description: Australia
security:
  - ApiKeyAuth: []
tags:
  - name: Attachments
    description: "Uploading a file, for anything that can carry one. One endpoint rather than one per record\r\ntype, because the upload itself is identical - only the record it is checked against differs."
  - name: Alerts
    description: Alerts management operations
  - name: Assets
    description: Assets management operations
  - name: Billing
    description: Billing management operations
  - name: Tickets
    description: Tickets management operations
  - name: Clients
    description: Clients management operations
  - name: Contacts
    description: Contacts management operations
  - name: Deletions
    description: Deletions management operations
  - name: Documents
    description: Documents management operations
  - name: Forms
    description: Forms management operations
  - name: Organization
    description: Organization management operations
  - name: Projects
    description: Projects management operations
paths:
  /v1/assets/agents:
    get:
      tags:
        - Assets
      summary: Lists agent assets
      description: >-
        Lists agent (managed device) assets for the service provider using
        cursor pagination. Results are sorted by `createdOn` descending (newest
        first).
      operationId: get_v1_assets_agents
      parameters:
        - name: Cursor
          in: query
          description: >-
            Opaque pagination cursor from a previous page; omit for the first
            page.
          schema:
            type: string
        - name: PageSize
          in: query
          description: >-
            Number of items per page, 1-200 (default 50). Out of range is
            rejected, not clamped.
          schema:
            type: integer
            format: int32
            default: 50
        - name: StatusIds
          in: query
          description: >-
            Comma-separated device status ids to include: 1 Unreachable, 2
            Online, 3 Offline, 4 Pending Delete, 6 Pending client inactive. Up
            to 100 ids; any other value is a 400. Deleted and client-inactivated
            devices are excluded either way.
          schema:
            type: string
        - name: ClientIds
          in: query
          description: Comma-separated client ids to include. Omit for every client.
          schema:
            type: string
        - name: Query
          in: query
          description: >-
            Keyword matched against the device name, display name and
            description. Up to 200 characters.
          schema:
            type: string
        - name: UpdatedSince
          in: query
          description: ISO-8601 timestamp; keeps only devices updated at or after it.
          schema:
            type: string
            format: date-time
        - name: UpdatedBefore
          in: query
          description: ISO-8601 timestamp; keeps only devices updated strictly before it.
          schema:
            type: string
            format: date-time
        - name: CreatedSince
          in: query
          description: ISO-8601 timestamp; keeps only devices created at or after it.
          schema:
            type: string
            format: date-time
        - name: CreatedBefore
          in: query
          description: ISO-8601 timestamp; keeps only devices created strictly before it.
          schema:
            type: string
            format: date-time
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: >-
                  #/components/schemas/AgentAssetListItemResponseListBaseResponse
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/AgentAssetListItemResponseListBaseResponse
            text/json:
              schema:
                $ref: >-
                  #/components/schemas/AgentAssetListItemResponseListBaseResponse
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ObjectBaseResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/ObjectBaseResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ObjectBaseResponse'
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ObjectBaseResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/ObjectBaseResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ObjectBaseResponse'
        '500':
          description: Internal Server Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ObjectBaseResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/ObjectBaseResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ObjectBaseResponse'
components:
  schemas:
    AgentAssetListItemResponseListBaseResponse:
      type: object
      properties:
        StatusCode:
          $ref: '#/components/schemas/HttpStatusCode'
        IsSuccess:
          type: boolean
        Data:
          type: array
          items:
            $ref: '#/components/schemas/AgentAssetListItemResponse'
          nullable: true
        DataContext:
          $ref: '#/components/schemas/PaginationDataContext'
        Notifications:
          type: array
          items:
            $ref: '#/components/schemas/Error'
      additionalProperties: false
    ObjectBaseResponse:
      type: object
      properties:
        StatusCode:
          $ref: '#/components/schemas/HttpStatusCode'
        IsSuccess:
          type: boolean
        Data:
          nullable: true
        DataContext:
          $ref: '#/components/schemas/ErrorDataContext'
        Notifications:
          type: array
          items:
            $ref: '#/components/schemas/Error'
      additionalProperties: false
    HttpStatusCode:
      enum:
        - 100
        - 101
        - 102
        - 103
        - 200
        - 201
        - 202
        - 203
        - 204
        - 205
        - 206
        - 207
        - 208
        - 226
        - 300
        - 301
        - 302
        - 303
        - 304
        - 305
        - 306
        - 307
        - 308
        - 400
        - 401
        - 402
        - 403
        - 404
        - 405
        - 406
        - 407
        - 408
        - 409
        - 410
        - 411
        - 412
        - 413
        - 414
        - 415
        - 416
        - 417
        - 421
        - 422
        - 423
        - 424
        - 426
        - 428
        - 429
        - 431
        - 451
        - 500
        - 501
        - 502
        - 503
        - 504
        - 505
        - 506
        - 507
        - 508
        - 510
        - 511
      type: integer
      format: int32
    AgentAssetListItemResponse:
      type: object
      properties:
        Id:
          type: string
          description: Device identifier.
          format: uuid
        Name:
          type: string
          description: Device name.
        Status:
          $ref: '#/components/schemas/CodeModel'
        ClientId:
          type: integer
          description: "Identifier of the client the device belongs to. `null` for an agent awaiting adoption -\r\ninstalled but not yet assigned to a client in the app. Such an agent is listed like any other,\r\nin whatever status it reports, with `LocationId` null too."
          format: int64
          nullable: true
        LocationId:
          type: integer
          description: "Identifier of the client location the device belongs to. `null` for an agent awaiting\r\nadoption."
          format: int64
          nullable: true
        ContactId:
          type: integer
          description: >-
            Identifier of the contact the agent asset is assigned to. Null when
            unassigned.
          format: int64
          nullable: true
          example: 7962
        CreatedOn:
          type: string
          description: >-
            Creation timestamp (UTC). Default sort key (ascending) for the
            agents list endpoint.
          format: date-time
        UpdatedOn:
          type: string
          description: Last-updated timestamp (UTC).
          format: date-time
          nullable: true
        DisplayName:
          type: string
          description: "Display name, always filled in: the override set in the app, or `Name` (what the agent\r\nreports) when there is none."
        Description:
          type: string
          description: Free-text description.
        Banner:
          type: string
          description: Banner / label text. Null when the asset has none.
          nullable: true
        TimeZone:
          type: string
          description: IANA time zone identifier for the device.
        LastBootUpTime:
          type: string
          description: Last boot-up time (UTC).
          format: date-time
          nullable: true
        LastDisconnectDateTime:
          type: string
          description: Last disconnect time (UTC).
          format: date-time
          nullable: true
        LastLoggedOnUser:
          type: string
          description: Last logged-on user (display name).
        LastLoggedOnUserUpn:
          type: string
          description: Last logged-on user principal name (UPN).
        LastLoggedOnUserDatetime:
          type: string
          description: Timestamp of the last user logon (UTC).
          format: date-time
          nullable: true
        Os:
          type: string
          description: Operating system (full string).
        OsType:
          type: string
          description: Operating system type.
        OsName:
          type: string
          description: Operating system name.
        OsVersion:
          type: string
          description: Operating system version.
        OsArchitecture:
          type: string
          description: Operating system architecture.
        HardwareArchitecture:
          type: string
          description: Hardware architecture.
        Type:
          $ref: '#/components/schemas/CodeModel'
        HardwareType:
          type: string
          description: >-
            Hardware type name. <b>Deprecated:</b> use `Type`, which also
            carries the id.
          deprecated: true
        Manufacturer:
          type: string
          description: Hardware manufacturer.
        Model:
          type: string
          description: Hardware model.
        SerialNumber:
          type: string
          description: >-
            Hardware serial number. The same name and value on a custom asset
            (`SerialNumber`).
        SerialNo:
          type: string
          description: >-
            Hardware serial number. <b>Deprecated:</b> use `SerialNumber`, which
            has the same value.
          deprecated: true
        WarrantyStartDate:
          type: string
          description: >-
            Warranty start date (UTC). Sourced from the device's warranty
            record.
          format: date-time
          nullable: true
        WarrantyEndDate:
          type: string
          description: Warranty end date (UTC). Sourced from the device's warranty record.
          format: date-time
          nullable: true
        Cpu:
          type: string
          description: CPU description.
        Memory:
          type: string
          description: Total memory.
        Disk:
          type: string
          description: Disk description.
        LocalIPAddress:
          type: string
          description: Local IP address.
        PublicIPAddress:
          type: string
          description: Public IP address.
        Uuid:
          type: string
          description: Device UUID.
        ShellVersion:
          type: string
          description: Agent shell version.
        RmmVersion:
          type: string
          description: RMM agent version.
        InstallerVersion:
          type: string
          description: Installer version.
        SecurityPosture:
          $ref: '#/components/schemas/SecurityPostureModel'
      additionalProperties: false
      description: >-
        An agent (managed device) asset as listed by `GET /v1/assets/agents`.
        Timestamps are UTC.
    PaginationDataContext:
      type: object
      properties:
        Pagination:
          $ref: '#/components/schemas/PaginatedResponse'
      additionalProperties: false
      description: "The `DataContext` of a cursor-paginated success response: carries the paging metadata\r\nfor the returned page."
    Error:
      type: object
      properties:
        Code:
          pattern: ^[0-9]{6}$
          type: string
          description: 6-digit MMTTNN error code. See the Public API error-code registry.
          example: '070101'
        Message:
          type: string
        PropertyName:
          type: string
          nullable: true
        ActionHint:
          type: string
          nullable: true
        DocUrl:
          type: string
          nullable: true
      additionalProperties: false
    ErrorDataContext:
      type: object
      properties:
        TraceId:
          type: string
          description: Request correlation id. Quote this when reporting a problem.
          nullable: true
      additionalProperties: false
      description: "The `DataContext` of an error response: carries the correlation id for the failed\r\nrequest."
    CodeModel:
      type: object
      properties:
        Id:
          type: integer
          description: >-
            Numeric identifier of the coded value (e.g. status, priority, type,
            or source id).
          format: int64
          example: 1
        Name:
          type: string
          description: Display name of the coded value.
      additionalProperties: false
      description: >-
        A coded value, such as a status, priority, type or source, as an id and
        a display name.
    SecurityPostureModel:
      type: object
      properties:
        Antivirus:
          $ref: '#/components/schemas/SecurityPostureStatusModel'
        Firewall:
          $ref: '#/components/schemas/SecurityPostureStatusModel'
        Patches:
          $ref: '#/components/schemas/SecurityPostureStatusModel'
        Apps:
          $ref: '#/components/schemas/SecurityPostureStatusModel'
      additionalProperties: false
      description: "The security posture of an agent, as four independent categories. Always present on an agent\r\nresponse; a category with nothing to report is `Unknown` rather than null."
    PaginatedResponse:
      type: object
      properties:
        NextCursor:
          type: string
          nullable: true
        PreviousCursor:
          type: string
          nullable: true
        HasMore:
          type: boolean
        HasPrevious:
          type: boolean
        TotalCount:
          type: integer
          format: int32
      additionalProperties: false
    SecurityPostureStatusModel:
      type: object
      properties:
        Id:
          type: integer
          description: Status id on the `PublicSecurityPostureStatus` scale.
          format: int32
          example: 1
        Name:
          type: string
          description: "Status name, as the Gorelo app's asset list labels it. A fixed set: 1 `Up To Date`,\r\n2 `Updates Available`, 3 `Out of Date` (one name for every category, the\r\napp's own helper value), 4 `Enabled`, 5 `Disabled`, 6 `Missing`,\r\n7 `Unmanaged`, 8 `N/A`, 9 `Unknown`."
          example: Up To Date
        Passing:
          type: boolean
          description: "Whether the category counts as healthy. `Updates Available` is healthy — the product\r\ntreats an available update as normal, not a fault — while `Unknown` is not, because\r\nno evidence of health is not health."
          example: true
      additionalProperties: false
      description: >-
        One security posture category: the coded status plus whether it counts
        as healthy.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      description: >-
        Your Gorelo API key. See [Generate API key](/generate-api-key). If your
        data is hosted in Australia, click the base URL at the top of this page
        and select `https://api.aue.gorelo.io`.
      name: X-API-Key
      in: header

````

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