---
title: "List pool transfers"
method: GET
path: "/preview/v2/pool_transfers"
tags: ["Pools"]
---

# List pool transfers

`GET /preview/v2/pool_transfers`

> ⚠️ This endpoint is in [public preview](/preview/roadmap).

List pool transfers for the caller's organization.

## Query parameters

- `pool` ResourcePathOrIdPoolId[]
- `status` 'pending' | 'executed' | 'rejected' — Lifecycle status of a pool transfer.
- `limit` integer
- `starting_after` string
- `ending_before` string

## Response `200`

Paginated list of pool transfers.

- V2ListPoolTransfersResponse
  - `object` 'list', required
  - `cursor` string
  - `has_more` boolean, required
  - `data` V2PoolTransferResponse[], required
    - `object` 'pool_transfer', required — Discriminator for `/pool_transfers` responses.
    - `id` union, required — Accepts the canonical prefix below; additional legacy prefixes are aliased for read compatibility. Writes always emit the canonical form.
      - string
      - string — Legacy alias prefix; accepted on read, never emitted on write.
    - `status` 'pending' | 'executed' | 'rejected', required — Lifecycle status of a pool transfer.
    - `created_at` integer, required — Unix timestamp.
    - `from_pool` string, required
    - `to_pool` string, required
    - `instance_sku` InstanceSkuSummary, required — A summary of an instance SKU - its `id` and human-recognizable `alias` - embedded on resources that reference a SKU.
      - `object` 'instance_sku', required
      - `id` union, required — Accepts the canonical prefix below; additional legacy prefixes are aliased for read compatibility. Writes always emit the canonical form.
        - string
        - string — Legacy alias prefix; accepted on read, never emitted on write.
      - `alias` string, required
    - `rejected_reason` string, nullable — Reason a pool transfer was rejected.
    - `allocation_schedule_delta` ScheduleEntry[], required — Node count over time, as a list of `[start_at, end_at)` time ranges. Example: 5 nodes from t=0 to t=3600 is `[{"start_at": 0, "end_at": 3600, "node_count": 5}]`. `start_at` and `end_at` must be 60-second aligned, `node_count` must be non-negative. On non-final entries, `end_at` may be omitted (inferred from the next entry's `start_at`); gaps fill with `node_count: 0`.
      - `start_at` integer, required — Unix timestamp.
      - `end_at` integer — Unix timestamp.
      - `node_count` integer, required

## Other responses

- `401` — Unauthorized.
- `403` — Forbidden.
- `422` — Validation failed.
- `500` — Internal server error.

---

[API](https://skmtc.dev/sfcompute/apis/sfc-api.md) · [All operations](https://skmtc.dev/sfcompute/apis/sfc-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/sfcompute/sfc-api/revisions/f3ff1539c0d9/schema)
