---
title: "List the provider org's nodes (with GPUs + location)"
method: GET
path: "/v1/orgs/{orgId}/provider/nodes"
tags: ["Provider"]
---

# List the provider org's nodes (with GPUs + location)

`GET /v1/orgs/{orgId}/provider/nodes`

## Path parameters

- `orgId` string, required

## Query parameters

- `includeRemoved` boolean
- `status` string

## Response `200`

OK

- ProviderNode[]
  - `cpuCores` integer, nullable
  - `cpuModel` string, nullable
  - `createdAt` string, required
  - `gpus` NodeGpuItem[], required
    - `gpuName` string, required
    - `quantity` integer, required
    - `vramGb` integer, required
  - `hostname` string, required
  - `id` string, required
  - `locationCity` string, nullable
  - `locationCountry` string, nullable
  - `nodeType` string, required
  - `ramGb` integer, nullable
  - `reservation` NodeReservationSummary — Reservation state of this node, from the caller's point of view. Present only when some of the node's GPU units are reserved.
    - `releasedUnitCount` integer, required — GPU units released back to the market for public sale
    - `reservations` NodeReservation[]
      - `allowedOrgIds` string[], required
      - `contractRef` string
      - `createdAt` string
      - `endsAt` string — Absent = open-ended until cancelled
      - `id` string, required
      - `nodeId` string, required
      - `reason` string
      - `reservedUnitIds` string[], required
      - `startsAt` string, required
      - `status` 'pending' | 'active' | 'expired' | 'cancelled' | 'needs-review', required — needs-review means the node's GPU topology changed under the reservation: it grants nothing (and withholds its units from everyone) until an operator re-affirms it.
      - `topologyGen` integer — Node topology generation this reservation was written against
      - `updatedAt` string
    - `reservedUnitCount` integer, required — GPU units currently held exclusively
  - `status` string, required
  - `tdxEnabled` boolean, required

## Other responses

- `400` — The request is invalid
- `401` — Missing or invalid API key
- `403` — API key lacks the required scope

---

[API](https://skmtc.net/openrelay/apis/openrelay-api.md) · [All operations](https://skmtc.net/openrelay/apis/openrelay-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/openrelay/openrelay-api/versions/32905b8f44f8/schema)
