---
title: "List Custody Fee Transfers"
method: POST
path: "/v1/custodyaccountfees"
tags: ["Fund Management"]
---

# List Custody Fee Transfers

`POST /v1/custodyaccountfees`

## Request

- Base URL: `https://api.gemini.com`
- URL: `https://api.gemini.com/v1/custodyaccountfees`
- Auth: API key in header `X-GEMINI-APIKEY` and API key in header `X-GEMINI-SIGNATURE` and API key in header `X-GEMINI-PAYLOAD`

<div class="p-4 text-sm section-icon section-info rounded-sm" role="alert">
  <div class="flex">
     <svg
        view-box="0 0 24 24"
      >
        <path
          fill-rule="evenodd"
          clip-rule="evenodd"
          d="M4 12C4 7.58172 7.58172 4 12 4C16.4183 4 20 7.58172 20 12C20 16.4183 16.4183 20 12 20C7.58172 20 4 16.4183 4 12ZM12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2ZM11 17V11H13V17H11ZM11 9V7H13V9H11Z"
        />
      </svg>
     <div>Under the terms of the <a href="https://www.gemini.com/legal/api-agreement">Gemini API Agreement</a>, polling this endpoint may be subject to <a href="/rate-limit">rate limiting</a>. This endpoint is currently restricted further than our standard rate limiting to a rate of 1 request per 5 seconds per subaccount. This rate is subject to change and will be updated here accordingly. This is the same limit as the <a href="/rest/fund-management#list-past-transfers">transfers</a> endpoint. One call to one affects the other.</div>
  </div>
</div>

This endpoint shows Custody fee records in the supported currencies.

### Roles
The API key you use to access this endpoint must have the Trader, Fund Manager or Auditor role assigned. See [Roles](/roles#roles) for more information.

The OAuth scope must have `history:read` assigned to access this endpoint. See [OAuth Scopes](/authentication/oauth#oauth-scopes) for more information.

## Headers

- `X-GEMINI-APIKEY` string, required
- `X-GEMINI-SIGNATURE` string, required
- `X-GEMINI-PAYLOAD` string, required
- `Content-Type` string
- `Content-Length` string
- `Cache-Control` string

## Request body

- object
  - `request` string, required: The literal string "/v1/custodyaccountfees"
  - `nonce` union, required: The nonce, as described in [Private API Invocation](/authentication/api-key#private-api-invocation)
    - union: timestamp
      - string: Gemini strongly recommends using milliseconds instead of seconds for timestamps. | Timestamp format | Example | Supported request type | |-----------------------|-----------------------|------------------------| | string (seconds) | `1495127793` | `POST` only | | string (milliseconds) | `1495127793000` | `POST` only |
      - integer: Gemini strongly recommends using milliseconds instead of seconds for timestamps. | Timestamp format | Example | Supported request type | |-----------------------------|---------------------------|------------------------| | whole number (seconds) | `1495127793` | `GET`, `POST` | | whole number (milliseconds) | `1495127793000` | `GET`, `POST` |
    - integer
  - `timestamp` union: timestamp
    - string: Gemini strongly recommends using milliseconds instead of seconds for timestamps. | Timestamp format | Example | Supported request type | |-----------------------|-----------------------|------------------------| | string (seconds) | `1495127793` | `POST` only | | string (milliseconds) | `1495127793000` | `POST` only |
    - integer: Gemini strongly recommends using milliseconds instead of seconds for timestamps. | Timestamp format | Example | Supported request type | |-----------------------------|---------------------------|------------------------| | whole number (seconds) | `1495127793` | `GET`, `POST` | | whole number (milliseconds) | `1495127793000` | `GET`, `POST` |
  - `limit_transfers` integer: The maximum number of Custody fee records to return. The default is 10 and the maximum is 50.
  - `account` string: Required for Master API keys. The name of the account within the subaccount group.

## Response `200`

Successful operation

- CustodyFeeTransfer[]
  - `txTime` integer: Time of Custody fee record in milliseconds
  - `feeAmount` string: The fee amount charged
  - `feeCurrency` string: Currency that the fee was paid in
  - `eid` integer: Custody fee event id
  - `eventType` string: Custody fee event type

## Other responses

- `400`: Bad request - malformed request or invalid parameters
- `401`: Unauthorized - missing or invalid authentication
- `403`: ApiKey fails IP Filtering Check
- `404`: Resource not found
- `429`: Too many requests - you have exceeded the rate limit
- `500`: Internal server error

---

[API](https://skmtc.dev/gemini/apis/rest-api.md) - [All operations](https://skmtc.dev/gemini/apis/rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gemini/apis/rest-api/revisions/24979792d748?raw)
