---
title: "List related transactions for a position"
method: GET
path: "/staking/positions/{id}/related_transactions"
tags: ["Staking"]
---

# List related transactions for a position

`GET /staking/positions/{id}/related_transactions`

## Request

- Base URL: `https://api.fireblocks.io/v1`
- URL: `https://api.fireblocks.io/v1/staking/positions/{id}/related_transactions`
- Auth: none declared
- TypeScript: <https://skmtc.dev/fireblocks/apis/fireblocks-api/docs/staking/positions/:id/related_transactions/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns enriched transaction history for a staking position with cursor-based pagination. Includes in-flight transactions with status pending. The in-flight transaction is always returned first; completed and failed history is ordered by the order parameter.

## Path parameters

- `id` string, required

## Query parameters

- `pageSize` integer, required
- `pageCursor` string
- `order` 'ASC' | 'DESC'

## Response `200`

Paginated list of related transactions for the position returned successfully.

- StakingPositionRelatedTransactionsPaginatedResponse
  - `data` PositionRelatedTransaction[], required: The related transactions for the current page.
    - `txId` string, required: The transaction ID.
    - `txHash` string: On-chain transaction hash. Absent while the transaction is pending.
    - `stakingOperation` 'APPROVE' | 'STAKE' | 'UNSTAKE' | 'WITHDRAW' | 'CLAIM_REWARDS' | 'SPLIT' | 'CONSOLIDATE' | 'MERGE' | 'TRANSFER' | 'AUTHORIZE' | 'ADD_TO_STAKE': Staking operation type. One of APPROVE, STAKE, UNSTAKE, WITHDRAW, CLAIM_REWARDS, SPLIT, CONSOLIDATE, MERGE, TRANSFER, AUTHORIZE, ADD_TO_STAKE. Absent on legacy persisted rows.
    - `timestamp` string, date-time, required: ISO timestamp when the transaction was initiated (send time).
    - `status` 'PENDING' | 'COMPLETED' | 'FAILED', required: Transaction outcome.
    - `amount` string: Portion of position amount this transaction moved (native units). Absent on legacy rows.
    - `txNote` string: User-provided note from the transfer request. Omitted when not set.
    - `completionTime` string, date-time: ISO timestamp when Cosmos unbonding is scheduled to end. Absent on other chains.
  - `next` string, nullable: Cursor for the next page. Use this value in the pageCursor parameter to fetch the next page. Null if no more pages.

## Other responses

- `400`: Bad request: missing/invalid fields, unsupported amount, or malformed payload.
- `403`: Forbidden: insufficient permissions, disabled feature, or restricted provider/validator.
- `404`: Not found: requested resource does not exist (e.g., position, validator, provider, or wallet).
- `429`: Rate limit exceeded: slow down and retry later.
- `500`: Internal error while processing the request.
- `default`: Error Response

---

[API](https://skmtc.dev/fireblocks/apis/fireblocks-api.md) - [All operations](https://skmtc.dev/fireblocks/apis/fireblocks-api/llms.txt) - [OpenAPI document](https://skmtc.dev/fireblocks/apis/fireblocks-api/revisions/4eba9965659a?raw)
