---
title: "Get Public XP Transfer History"
method: GET
path: "/xp/public-transfers"
tags: ["XPTransfersV2"]
---

# Get Public XP Transfer History

`GET /xp/public-transfers`

## Request

- Base URL: `https://api.prod.paradex.trade/v1`
- URL: `https://api.prod.paradex.trade/v1/xp/public-transfers`
- Auth: none declared

Retrieve a feed of public XP transfers. Supports filtering by time range or getting the latest transfers based on page_size. Private transfers are excluded from results.

## Query parameters

- `start_at` integer
- `end_at` integer
- `season` string
- `cursor` string
- `page_size` integer

## Response `200`

OK

- object
  - `next` string: The pointer to fetch next set of records (null if there are no records left)
  - `prev` string: The pointer to fetch previous set of records (null if there are no records left)
  - `results` object[]: Array of paginated results
    - `amount` integer: Amount of XP transferred
    - `created_at` integer: Creation timestamp (milliseconds since epoch)
    - `fee` integer: Fee charged for the transfer (deducted from sender's balance)
    - `id` string: Unique transfer identifier
    - `is_private` boolean: Whether the transfer is private (not shown on public feeds)
    - `recipient` string: Address of the recipient (gaining XP)
    - `season` string: Season identifier ('season1' for Season 1, 'season2' for Season 2, etc.)
    - `sender` string: Address of the sender (losing XP)

## Other responses

- `400`: Bad Request

## Changes

- **2026-10-22** `f33feb7333ea`: 3 warning
  - added the new `ADDRESS_BOOK_NOT_PARADEX_ACCOUNT` enum value to the `error/allOf[#/components/schemas/responses.ErrorCode]/` response property for the response status `400`
  - added the new `ADDRESS_BOOK_REPEATED_IN_IMPORT` enum value to the `error/allOf[#/components/schemas/responses.ErrorCode]/` response property for the response status `400`
  - added the new `STARKNET_PARENT_ONBOARDING_DISABLED` enum value to the `error/allOf[#/components/schemas/responses.ErrorCode]/` response property for the response status `400`
- **2026-10-20** `72c125c93c2b`: 2 warning
  - added the new `SESSION_EXPIRED` enum value to the `error/allOf[#/components/schemas/responses.ErrorCode]/` response property for the response status `400`
  - added the new `SESSION_REVOKED` enum value to the `error/allOf[#/components/schemas/responses.ErrorCode]/` response property for the response status `400`
- …earlier changes not shown

[Operation history](https://skmtc.dev/tradeparadex/apis/paradex-rest-api-2/changes/xp/public-transfers/get.md)

---

[API](https://skmtc.dev/tradeparadex/apis/paradex-rest-api-2.md) - [All operations](https://skmtc.dev/tradeparadex/apis/paradex-rest-api-2/llms.txt) - [OpenAPI document](https://skmtc.dev/tradeparadex/apis/paradex-rest-api-2/revisions/f33feb7333ea?raw)
